好吧,所以我很新C++ & Windows API,我只是寫一個小應用程序。我想我的應用程序使用視覺樣式在這兩個XP,Vista和Windows 7,所以我說此行我的代碼的頂部:C++/Win32:XP視覺樣式 - 沒有控件顯示出來?
#pragma comment(linker,"\"/manifestdependency:type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='*' publicKeyToken='6595b64144ccf1df' language='*'\"")
這似乎是我的Windows 7計算機,還Vista的上完美運行機。但是當我在XP上試用應用程序時,應用程序不會加載任何控件(例如按鈕,標籤等) - 甚至不會顯示消息框。
此圖片顯示了我剛纔放在一起證明什麼,我試圖解釋一個小的測試應用程序:
在這個測試中的應用我沒有使用任何花哨的特別或複雜的代碼。我只是有效地採取從MSDN庫最基本的示例代碼(http://msdn.microsoft.com/en-us/library/ff381409.aspx),並加入到WM_CREATE消息的部分,創建一個按鈕:
MyBtn = CreateWindow(L"Button", L"My Button", BS_PUSHBUTTON | WS_CHILD | WS_VISIBLE, 25, 25, 100, 30, hWnd, NULL, hInst, 0);
但我就是想不通這是怎麼回事,併爲什麼它不工作。任何想法傢伙?先進的謝謝你。我也應該提到,應用程序是在Windows 7機器上使用Visual C++ 2010 Express構建的 - 這些應用程序是使用Visual C++ 2010 Express創建的,如果這有什麼不同?)
我使用相同的清單加上'processorArchitecture =「X86」'屬性。我不確定它是否會修復它。 – 2010-05-30 11:15:09
Windows的第6版是Windows Vista。嘗試將其更改爲5,看看會發生什麼。 – Puppy 2010-05-30 12:57:50
@尼克D - 感謝您的建議,但事實證明不會有所作爲。 @DeadMG - 也沒有運氣。應用程序構建成功,但是當我嘗試運行它時,出現了有關所有平臺上的錯誤配置(Win XP,Vista和7)的錯誤。不過謝謝。 – user353297 2010-05-31 01:36:47