2013-07-04 143 views
0

msdn,我應該包括「SHLOBJ.H」爲CSIDL_COMMON_APPDATA運行,但我仍然得到error C2065: 'CSIDL_COMMON_APPDATA' : undeclared identifier 導致該錯誤是無法解決未聲明的標識符錯誤CSIDL_COMMON_APPDATA

if (SUCCEEDED(SHGetSpecialFolderPathA(NULL,szPath,CSIDL_COMMON_APPDATA,FALSE)))

任何人都可以幫忙嗎?我在vC++中使用Visual Studio 6.0進行編碼

+0

如果打開SHLOBJ.H實際上是定義CSIDL_COMMON_APPDATA? – snowdude

+0

是的,這正是msdn所說的! – vin

+0

我知道這就是它說的,但只是爲了確保你有shlobj.h的正確版本,你應該打開它並驗證#define在那裏。它應該是這樣的:#define CSIDL_COMMON_APPDATA 0x0023 – snowdude

回答

0

看起來你有一個無效(或舊版本)的shlobj.h。從微軟下載最新的SDK,它會擁有最新版本的文件:

http://www.microsoft.com/en-gb/download/details.aspx?id=8279

+0

你認爲這是一個好主意嗎?不會妨礙任何其他功能? – vin

+0

我在發佈了這個答案,然後纔對您的CSIDL_COMMON_APPDATA定義爲什麼進行了更正。嘗試將shlobj.h包括到CPP文件的頂部,看看是否有幫助。 – snowdude