我正在嘗試將SDL1.2的一個自定義版本中的一些C++代碼從SDL1.2更新到SDL2。那些我百思不得其解的線是這些:更新SDL1.2 SDL_GetWMInfo到SDL2 SDL_GetWindowWMInfo
SDL_SysWMinfo systemInfo;
SDL_VERSION(&systemInfo.version);
if(SDL_GetWindowWMInfo(window, &systemInfo) !=1) return;
if (!::OpenClipboard(systemInfo.info.win.window)) return;
SDL_GetWindowWMInfo在SDL_syswm.h這樣定義的:
typedef struct SDL_SysWMinfo SDL_SysWMinfo;
extern DECLSPEC SDL_bool SDLCALL SDL_GetWindowWMInfo(SDL_Window * window, SDL_SysWMinfo * info);
當我嘗試建立在Visual Studio 2010中,我得到這個錯誤,通過拋出在上面的代碼中的第三行:
1> sdlmain.cpp
1>..\src\gui\sdlmain.cpp(2966): error C2065: 'window' : undeclared identifier
我想答案就在這裏:
https://gamedev.stackexchange.com/questions/82068/how-can-i-obtain-a-window-handle-in-sdl-2-0-3
但我是一個初學者,無法弄清楚如何適應我自己的代碼。如果有人願意幫助一個完整的初學者,我將不勝感激。
什麼不清楚['爲SDL_GetWindowWMInfo()'wiki頁面(HTTPS://wiki.libsdl .ORG/SDL_GetWindowWMInfo)? – genpfault
@emendelson您不會在評論中進行換行,但您可以編輯自己的問題以包含其他信息。 「捲曲的紅色inderscore」沒有描述任何內容,什麼是實際的錯誤信息?您的窗口在哪裏(以及如何)被定義? (和科西嘉你不能使用任何未聲明的東西) – keltar
我已經用我學到的東西改寫了我的問題。再次感謝任何幫助。 – emendelson