Từ 1 tới 4 trên tổng số 4 kết quả

Đề tài: is not a valid Win32 application. (Exception from HRESULT: 0x800700C1)

  1. #1
    Ngày gia nhập
    03 2009
    Bài viết
    13

    Mặc định is not a valid Win32 application. (Exception from HRESULT: 0x800700C1)

    số là thế này : mình mới đọc được mới có 1 trang về Directx, copy rồi paste vào C# 2005. thế là nhận ngay được lỗi khi debug tới dòng ni:
    if (form.InitializeDirect3D() == false) // Check if D3D could be initialized
    Như vậy là bị sao thế?..
    Visual C# Code:
    1. using Microsoft.DirectX;
    2. using Microsoft.DirectX.Direct3D;
    3. using System;
    4. using System.Drawing;
    5. using System.Windows.Forms;
    6.  
    7. namespace MyFirstDirectXProgram
    8. {
    9.     class UsingDirectX : Form
    10.     {
    11.         Device DX_Device = null;    // Drawing device
    12.  
    13.         public UsingDirectX()
    14.         {
    15.             this.ClientSize = new Size(256,256);    // Specify the client size
    16.             this.Text = "My First DirectX Program"; // Specify the title
    17.         }
    18.        
    19.         public bool InitializeDirect3D()
    20.         {
    21.             try
    22.             {
    23.                 PresentParameters pps = new PresentParameters();
    24.                 pps.Windowed = true;    // Specify that it will be in a window
    25.                 pps.SwapEffect = SwapEffect.Discard;    // After the current screen is drawn, it will be automatically deleted from memory
    26.                 DX_Device = new Device(0, DeviceType.Hardware, this, CreateFlags.SoftwareVertexProcessing, pps); // Put everything into the device
    27.                 return true;
    28.             }
    29.             catch(DirectXException e)
    30.             {
    31.                 MessageBox.Show(e.ToString(), "Error"); // Handle all the exceptions
    32.                 return false;
    33.             }
    34.         }
    35.  
    36.         private void Render()
    37.         {
    38.             if(DX_Device == null)   // If the device is empty don't bother rendering
    39.             {
    40.                 return;
    41.             }
    42.  
    43.             DX_Device.Clear(ClearFlags.Target, Color.White, 1.0f, 0);  // Clear the window to white
    44.             DX_Device.BeginScene();
    45.  
    46.             // Rendering is done here
    47.  
    48.             DX_Device.EndScene();
    49.             DX_Device.Present();
    50.         }
    51.  
    52.         static void Main()
    53.         {
    54.  
    55.             UsingDirectX form = new UsingDirectX(); // Create the form
    56.  
    57.            if (form.InitializeDirect3D() == false) // Check if D3D could be initialized <----------------------------------------------------------------------------
    58.             {
    59.                 MessageBox.Show("Could not initialize Direct3D.", "Error");
    60.                 return;
    61.             }
    62.  
    63.             form.Show();    // When everything is initialized, show the form
    64.  
    65.             while(form.Created) // This is our message loop
    66.             {
    67.                 form.Render();  // Keep rendering until the program terminates
    68.                 Application.DoEvents(); // Process the events, like keyboard and mouse input
    69.             }
    70.         }
    71.     }
    72. }
    Đã được chỉnh sửa lần cuối bởi gabygabby : 12-05-2009 lúc 09:49 PM.

  2. #2
    Ngày gia nhập
    07 2006
    Nơi ở
    Hanoi, Vietnam
    Bài viết
    2,578

    Bạn paste vào đâu? Phải tạo project cho ứng dụng win32 Application thì mới được chứ? Hãy làm lại theo những gì đã chỉ dẫn ở nơi mà bạn đã copy đoạn mã này.
    Email: admin[@]congdongcviet.com | CC to: info[@]congdongcviet.com
    Phone: 0972 89 7667 (Office: 04 6329 2380)
    Yahoo & Skype: dreaminess_world (Vui lòng chỉ rõ mục đích ngay khi liên hệ, cảm ơn!)

    Một người nào đó coi thường ý thức kỷ luật cũng có nghĩa là người đó đã coi thường tương lai số phận của chính bản thân người đó. Những người coi thường ý thức kỷ luật sẽ không bao giờ có được sự thành công trong sự nghiệp!

  3. #3
    Ngày gia nhập
    03 2009
    Bài viết
    13

    đúng roai`đúng là paste vào win32app rồi. ko thì làm sao chay được tới đó!!!..
    Đã được chỉnh sửa lần cuối bởi gabygabby : 13-05-2009 lúc 08:51 AM.

  4. #4
    Ngày gia nhập
    03 2009
    Bài viết
    13

    Vào msdn xem thử thì có 1 đoạn code giúng y như thế, nhưng mà :
    Namespace: Microsoft.WindowsMobile.DirectX.Direct3D
    Assembly: Microsoft.WindowsMobile.DirectX (in microsoft.windowsmobile.directx.dll)

    Chán!

Các đề tài tương tự

  1. Trả lời: 0
    Bài viết cuối: 13-12-2012, 12:31 PM
  2. Lỗi Access is denied. (Exception from HRESULT: 0x80070005 (E_ACCESSDENIED)) xử lý thế nào?
    Gửi bởi Sounj trong diễn đàn Thắc mắc lập trình ASP.NET
    Trả lời: 0
    Bài viết cuối: 25-10-2012, 12:47 PM
  3. Lỗi Type mismatch. (Exception from HRESULT: 0x80020005 (DISP_E_TYPEMISMATCH))
    Gửi bởi dominic9 trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 0
    Bài viết cuối: 29-04-2011, 08:59 AM
  4. Lỗi Invalid index. (Exception from HRESULT: 0x8002000B (DISP_E_BADINDEX))
    Gửi bởi sdonku trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 5
    Bài viết cuối: 08-12-2010, 10:20 PM
  5. Lỗi 'not valid win32 application'
    Gửi bởi huytd trong diễn đàn Thắc mắc lập trình Visual C++
    Trả lời: 4
    Bài viết cuối: 16-06-2009, 09:41 AM

Quyền hạn của bạn

  • Bạn không thể gửi đề tài mới
  • Bạn không thể gửi bài trả lời
  • Bạn không thể gửi các đính kèm
  • Bạn không thể chỉnh sửa bài viết của bạn