Nie mogę edytować rejestru windows

0

Witam!
W Windows 8.1 jest domyślnie ustawiona opcja że po włączeniu komputera system automatycznie loguje ostatniego użytkownika. Jest to bardzo denerwujące bo w domu jest kilka i zawsze po włączeniu kompa trzeba się wylogować. Wyczytałem że aby to przestawić trzeba zmienić gdzieś w rejestrze jedną wartość. Problem w tym że po każdym uruchomieniu proces logowania Windows automatycznie z powrotem przestawia te ustawienia na te wkurzające (gratuluję debilizmu twórcom windowsa).
Wymyśliłem że napiszę program który będzie to jeszcze raz przestawiał. I tu jest mój problem program w ogóle nie chce edytować rejestru.

Wartość Enabled w kluczu SwicthUser chcę przestawiać na 1 (domyślnie zero)
Oto kod:

#include<windows.h>
#include<iostream>
using namespace std;

void stealth() {
    HWND stealth;
    AllocConsole();
    stealth = FindWindowA("consoleWindowClass", NULL);
    ShowWindow(stealth, 0);
}

int main() {
    //stealth();

    HKEY hkSoftware, hkMicrosoft, hkWindows, hkCurrentVersion, hkAuthentication, hkLogonUI, hkUserSwitch, hkTest;
    DWORD value = 1;

    RegOpenKeyEx(HKEY_LOCAL_MACHINE, "SOFTWARE", 0, KEY_ALL_ACCESS, &hkSoftware);
    RegOpenKeyEx(hkSoftware, "Microsoft", 0, KEY_ALL_ACCESS, &hkMicrosoft);
    RegOpenKeyEx(hkMicrosoft, "Windows", 0, KEY_ALL_ACCESS, &hkWindows);
    RegOpenKeyEx(hkWindows, "CurrentVersion", 0, KEY_ALL_ACCESS, &hkCurrentVersion);
    RegOpenKeyEx(hkCurrentVersion, "Authentication", 0, KEY_ALL_ACCESS, &hkAuthentication);
    RegOpenKeyEx(hkAuthentication, "LogonUI", 0, KEY_ALL_ACCESS, &hkLogonUI);
    RegOpenKeyEx(hkLogonUI, "UserSwitch", 0, KEY_ALL_ACCESS, &hkUserSwitch);

    RegSetValueEx(hkUserSwitch, "kurwiszon", 0, REG_DWORD, (const BYTE*)&value, sizeof(value));
    RegCloseKey(hkUserSwitch);

    return 0;

}
 

Dlaczego to nie działa?

0

A uruchamiasz ten program z prawami administratora?

0

Zaraz, nie, oczywiście, teraz działa

Tylko jak to zrobić żeby uruchamiało się przy autostarcie dla każdego usera z prawami administratora ?

0

Ok, program ma domyślnie uprawnienia administratora dla wszystkich i jest w autostarcie u wszystkich userów. Działa jeżeli uruchomię go ręcznie ale nie działa w autostarcie. Jaki może być problem?

0

Zrobiłem to poprzez ustawienie zadania uruchamianego przy logowaniu.

Problem rozwiązany! Dzięki :)

1 użytkowników online, w tym zalogowanych: 0, gości: 1