私は実際に、解決済みの別のスレッドを見つけました。重複して申し訳ありません。
解決済みスレッドへのリンク: DirectX 未解決の外部エラー
それで、初心者向けの本の助けを借りてDirectX 11を試し始めましたが、最初のデバッグでエラーが発生しました:S
まだエラーが発生していますが、愚かな構文エラーを犯していないことを確認するために、本からコードを一語一句コピーしました。
プログラム 'C:.....\DXBlankWindow.exe' を開始できません。システムは、指定されたファイルを見つけることができません。
エラー 1:
エラー LNK2019: 未解決の外部シンボル "long stdcall WndProc(struct HWND *,unsigned int,unsigned int,long)" (?WndProc@@YGJPAUHWND__@@IIJ@Z) 関数 _wWinMain@16 C:\Users\Tim\Documents で参照\Visual Studio 2010\Projects\DirectXTuts\DXBlankWindow\DXBlankWindow\main.obj
エラー 2:
エラー LNK1120: 1 未解決の外部 C:\Users\Tim\Documents\Visual Studio 2010\Projects\DirectXTuts\DXBlankWindow\Debug\DXBlankWindow.exe 1
また、プロジェクトのデバッグ フォルダーを確認した後、.exe ファイルが作成されていません。
また、簡単なプログラムを実行して、プロジェクトが実行されるかどうかを確認しました。これは正常に実行され、.exe ファイルが作成されます。また、ランタイム ライブラリを「マルチ スレッド デバッグ (/MTd)」に変更しました。
私はおそらく非常に基本的で非常に単純な間違ったことをしていますが、私の人生では何を解決することはできません. どんな助けでも本当に感謝しています。ここにコードがある以外に言うことは何もないと思います:
#include<Windows.h>
// Define WndProc
LRESULT CALLBACK WndProc( HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam );
// Program Entry Point
int WINAPI wWinMain( HINSTANCE hInstance, HINSTANCE prevInstance, LPWSTR cmdLine, int cmdShow )
{
// Define unused parameters
UNREFERENCED_PARAMETER( prevInstance );
UNREFERENCED_PARAMETER( cmdLine );
// Define Window variables
WNDCLASSEX wndClass = { 0 };
wndClass.cbSize = sizeof( WNDCLASSEX ) ;
wndClass.style = CS_HREDRAW | CS_VREDRAW;
wndClass.lpfnWndProc = WndProc;
wndClass.hInstance = hInstance;
wndClass.hCursor = LoadCursor( NULL, IDC_ARROW );
wndClass.hbrBackground = ( HBRUSH )( COLOR_WINDOW + 1 );
wndClass.lpszMenuName = NULL;
wndClass.lpszClassName = "DX11BookWindowClass";
// Check if wndClass is being registered, if not error.
if( !RegisterClassEx( &wndClass ) )
return -1;
// Create a RECT to hold the screen positions
RECT rc = { 0, 0, 640, 480 };
AdjustWindowRect( &rc, WS_OVERLAPPEDWINDOW, FALSE );
// Create The Window through ANSI
HWND hwnd = CreateWindowA( "DX11BookWindowClass", "Blank Win32 Window",
WS_OVERLAPPEDWINDOW, CW_USEDEFAULT, CW_USEDEFAULT, rc.right - rc. left,
rc.bottom - rc.top, NULL, NULL, hInstance, NULL );
if( !hwnd )
return -1;
ShowWindow( hwnd, cmdShow );
// Demo Initialize
MSG msg = { 0 };
while( msg.message != WM_QUIT )
{
if( PeekMessage( &msg, 0, 0, 0, PM_REMOVE ) )
{
TranslateMessage( &msg );
DispatchMessage( &msg );
}
// Update
// Draw
}
// Demo Shutdown
return static_cast<int>( msg.wParam );
}
Thanks again.