2010-04-22 32 views
1

我在我的應用程序中使用「RegSetKeyValue」API。我指的是http://msdn.microsoft.com/en-us/library/ms724921(VS.85).aspx與RegSetKeyValue的鏈接器錯誤

正如文章中所述,我將_WIN32_WINNT_定義爲0x0600,並且在我的鏈接器選項中包含了Advapi32.lib。

但仍然收到鏈接器錯誤,「無法解析的外部符號_RegSetKeyValue」。請告訴我我在這裏錯過了什麼。

這是我的代碼片段。

#define _WIN32_WINNT (0x0600) 

#include <windows.h> 

int main() 
{ 
    LONG status; 

    status = RegSetKeyValue(HKEY_LOCAL_MACHINE, 
          "SOFTWARE\\7-Zip", 
          "path", 
          REG_SZ, 
          "C:\\newfolder\\path", 
          strlen("C:\\chethan\\path")+1); 
    return 0; 
} 

PS:我用VC此++ 6.0(甚至試圖在Visual Studio 2005中,同樣的錯誤呢!)。

回答

2

鏈接器正在使用的Advapi32.lib可能太老了 - 這個API是在Vista中引入的。確保鏈接器使用Vista SDK或更新的.lib。

+0

噢好吧......我在Windows-XP上使用它。 非常感謝:) – Microkernel 2010-04-22 11:00:12