首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

使用RegQueryValue的問題解决办法

2012-03-30 
使用RegQueryValue的問題varstr:stringbeginRegQueryValue(HKEY_LOCAL_MACHINE, SOFTWARE\Microsoft\Wind

使用RegQueryValue的問題
var
str:string;
begin
RegQueryValue(HKEY_LOCAL_MACHINE, 'SOFTWARE\Microsoft\Windows   NT\CurrentVersion\Winlogon ',pchar(str),length(pchar(str))+1);

編譯不過,顯示為:[Error]   Unit1.pas(133):   Types   of   actual   and   formal   var   parameters   must   be   identical,請問如何解決?



[解决办法]
形式参数必须与实际参数一致
[解决办法]
LONG RegQueryValue(
HKEY hKey,// handle of key to query
LPCTSTR lpSubKey,// address of name of subkey to query
LPTSTR lpValue,// address of buffer for returned string
PLONG lpcbValue // address of buffer for size of returned string
);

最后一个参数也是指针,指向一个Long(DWORD)类型的缓冲区。

你改为这样试试
var
str:string;
dwStr: DWORD;
begin
RegQueryValue(HKEY_LOCAL_MACHINE, 'SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon ',pchar(str),&dwStr);

推荐使用RegQueryValueEx这个API。

热点排行