Re: [問題] WinAPI的Rebar Controls出不來

看板C_and_CPP (C/C++)作者 (= ̄ω ̄=)時間15年前 (2010/09/25 11:59), 編輯推噓0(001)
留言1則, 1人參與, 最新討論串2/2 (看更多)
這個問題和以下幾個 macro 的定義有關: WINVER 代表最低平台需求 _WIN32_WINNT 代表最低的 Win NT 平台需求 _WIN32_WINDOWS 代表最低的 Win 9x 平台需求 _WIN32_IE 代表最低的 IE 需求 這些 macro 的數值可以參考:Using the WIndows Headers (Windows) http://msdn.microsoft.com/en-us/library/aa383745%28VS.85%29.aspx 在 Visual C++ 2008 Express 當中,建立新專案而不勾選「空白專案」的話, targetver.h 就有這些 macro 的定義。如果建立空白專案或者直接開啟 MSDN 所附上的 範例專案就要自行定義這些 macro ,並且確定在 compile 的時候它們出現在最前面。 以 rebar 的問題來說只要在一開始有下面三行程式碼就可以了: #ifndef _WIN32_WINNT // 指定最低平台需求為 Windows NT 4.0。 #define _WIN32_WINNT 0x0400 // 將它變更為針對 Windows 其他版本的適當值。 #endif 以上是在 Visual C++ 的解決方法,而我在 MinGW + Eclipse + CDT 環境下的測試 發現需要定義的 macro 不一樣: #ifndef _WIN32_IE // 指定最低平台需求為 Internet Explorer 4.0。 #define _WIN32_IE 0x0400 // 將它變更為針對 IE 其他版本的適當值。 #endif 最保險的方法就是讓四個 macro 都有定義。 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.136.96.116

09/26 00:37, , 1F
可以理解用MFC、SDK寫視窗程式,為什麼會老是被罵了
09/26 00:37, 1F
文章代碼(AID): #1CdNEGaa (C_and_CPP)
文章代碼(AID): #1CdNEGaa (C_and_CPP)