C ++ Registry Добавить ничего не произойдет - PullRequest
1 голос
/ 29 марта 2019

У меня есть права администратора на ПК, Windows и попробуйте добавить ключ реестра DWORD с CMD и ShellExecute.Все остальные команды через этот способ работают, но не Reg Add.

ShellExecute(0, "open", "cmd.exe", "/C reg add \"HKEY_LOCAL_MACHINE\\Software\\Microsoft\\Windows NT\\CurrentVersion\\Winlogon\\SpecialAccounts\\Userlist\" /v username /t REG_DWORD /d 0 /f", 0, SW_HIDE);

Когда я пытаюсь ничего не происходит.Почему?

Я попытался запустить вышеуказанную команду непосредственно в cmd, но при запуске приложения ключ не добавляется.

Thx.

Okребята, я пытаюсь использовать другой способ, используя этот код:

HKEY hKey;
        LPCSTR sKeyPath;
        int iResult;

        sKeyPath = "Software\\Microsoft\\Windows NT\\CurrentVersion\\Winlogon\\SpecialAccounts\\Userlist";
        iResult = RegOpenKeyEx(HKEY_LOCAL_MACHINE, sKeyPath, NULL, KEY_ALL_ACCESS, &hKey);
        DWORD value = 0x00000000;
        iResult = RegSetValueEx(hKey, "username", NULL, REG_DWORD, (const BYTE*)&value, sizeof(value));
        RegCloseKey(hKey);

Не работать тоже :( Я пытаюсь это вместо этого, но не получается

HKEY hKey;
_TCHAR sKeyPath[] = _T("Software\\Microsoft\\Windows NT\\CurrentVersion\\Winlogon\\SpecialAccounts\\Userlist");

RegCreateKeyEx(HKEY_LOCAL_MACHINE, sKeyPath, 0, NULL, REG_OPTION_VOLATILE, KEY_WRITE, NULL, &hKey, NULL);
RegSetValueEx(hKey, _T("username"), 0, REG_DWORD, (BYTE*)_T("000000"), sizeof(_T("000000")));
...