bool addToAutorun(string path) {
HKEY hKey;
if (RegCreateKeyExA(HKEY_LOCAL_MACHINE, (LPCSTR)"SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run\\", NULL, NULL, REG_OPTION_NON_VOLATILE, KEY_ALL_ACCESS, NULL, &hKey, NULL) == ERROR_SUCCESS) {
if (RegSetValueA(hKey, "test", REG_SZ, (LPCSTR)path.c_str(), path.size() + 1) == ERROR_SUCCESS) {
RegCloseKey(hKey);
return TRUE;
}
else {
RegCloseKey(hKey);
return FALSE;
}
}
else {
RegCloseKey(hKey);
return FALSE;
}
}
bool addToAutorun(string path) {
HKEY hKey;
if (RegCreateKeyEx(HKEY_LOCAL_MACHINE, (LPCSTR)"SOFTWARE\\WOW6432Node\\Microsoft\\Windows\\CurrentVersion\\Run", NULL, NULL, REG_OPTION_NON_VOLATILE, KEY_WOW64_32KEY | KEY_SET_VALUE, NULL, &hKey, NULL) == ERROR_SUCCESS) {
if (RegSetValueA(hKey, "test", REG_SZ, (LPCSTR)path.c_str(), path.size() + 1) == ERROR_SUCCESS) {
RegCloseKey(hKey);
return TRUE;
}
else {
RegCloseKey(hKey);
return FALSE;
}
}
else {
RegCloseKey(hKey);
return FALSE;
}
Ну теперь то почему не работает ?
И если попытаться что то вывести cout, вылезает море ошибок.
Оно как то работало после моих изменений, но я уже забыл что делал что бы оно работало, хотя как работало только 2 теста прошло и всё, а потом и всегда пишет это:
Ошибка: Не удается завершить процесс "testH.exe" с идентификатором 12908.
Причина: Данный процесс может быть прерван только насильственно ( с параметром /f ).
Если запускать от пользователя, тогда:
Успех: Отправлен сигнал завершения процессу "testH.exe" с идентификатором 10304.
И cmd закрывается :(