regsetvalueexで値の作成ができません
Posted: 2010年12月06日(月) 22:26
void func() {
HKEY key=NULL;
int sz=GetModuleFileName(NULL,buf,sizeof(buf))+1;
if(ERROR_SUCCESS == RegOpenKeyEx(HKEY_LOCAL_MACHINE,TEXT("Software\\Microsoft\\Windows\\CurrentVersion\\Run"),REG_OPTION_NON_VOLATILE,KEY_SET_VALUE,&key)) {
RegSetValue(key,TEXT("DTCLNR"),REG_SZ,buf,sz*sizeof(TCHAR));
RegCloseKey(key);
}
}
で指定のレジストリキー(Software\\Microsoft\\Windows\\CurrentVersion\\Run)付近をレジストリエディタでみると、
DTCLNRという名の値ではなく DTCLNRというキーが作成されていました。
なぜでしょうか?
HKEY key=NULL;
int sz=GetModuleFileName(NULL,buf,sizeof(buf))+1;
if(ERROR_SUCCESS == RegOpenKeyEx(HKEY_LOCAL_MACHINE,TEXT("Software\\Microsoft\\Windows\\CurrentVersion\\Run"),REG_OPTION_NON_VOLATILE,KEY_SET_VALUE,&key)) {
RegSetValue(key,TEXT("DTCLNR"),REG_SZ,buf,sz*sizeof(TCHAR));
RegCloseKey(key);
}
}
で指定のレジストリキー(Software\\Microsoft\\Windows\\CurrentVersion\\Run)付近をレジストリエディタでみると、
DTCLNRという名の値ではなく DTCLNRというキーが作成されていました。
なぜでしょうか?