I wrote a small code that should replace the value in the registry, everything runs without errors, but the value in the registry does not change. The program started, executed and nothing happened ... Help me figure out what my mistake is ... Here is the program code:
#include "stdafx.h" #include <windows.h> #include <winuser.h> #include <iostream> #include <conio.h> int main(int argc, _TCHAR* argv[]) { LONG lResult; HKEY hKey; PCTSTR lpSubKey = TEXT("SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\Winlogon"); lResult = RegOpenKeyEx(HKEY_LOCAL_MACHINE,lpSubKey,0,KEY_SET_VALUE,&hKey); if (lResult != ERROR_SUCCESS) { printf("Key not found.\n"); return FALSE; } PCTSTR lpName = TEXT("Shell"); PCTSTR lpValueEx = "vl.exe"; lResult = RegSetValueEx(hKey,lpName,0,REG_SZ,(LPBYTE)lpValueEx,(DWORD)(lstrlen(lpValueEx) + 1)*sizeof(TCHAR)); if (lResult != ERROR_SUCCESS) { printf("Function fails.\n"); return FALSE; } lResult = RegCloseKey(hKey); return 0; } Π ΡΡΠΎ Π½Π° Π²ΡΠ²ΠΎΠ΄Π΅ (Win32). ΠΠ°Π³ΡΡΠΆΠ΅Π½ΠΎ "C:\Windows\SysWOW64\ntdll.dll". ΠΠ΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ ΠΈΠ»ΠΈ ΠΎΡΠΊΡΡΡΡ PDB-ΡΠ°ΠΉΠ». "a.exe" (Win32). ΠΠ°Π³ΡΡΠΆΠ΅Π½ΠΎ "C:\Windows\SysWOW64\kernel32.dll". ΠΠ΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ ΠΈΠ»ΠΈ ΠΎΡΠΊΡΡΡΡ PDB-ΡΠ°ΠΉΠ». "a.exe" (Win32). ΠΠ°Π³ΡΡΠΆΠ΅Π½ΠΎ "C:\Windows\SysWOW64\KernelBase.dll". ΠΠ΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ ΠΈΠ»ΠΈ ΠΎΡΠΊΡΡΡΡ PDB-ΡΠ°ΠΉΠ». "a.exe" (Win32). ΠΠ°Π³ΡΡΠΆΠ΅Π½ΠΎ "C:\Windows\SysWOW64\advapi32.dll". ΠΠ΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ ΠΈΠ»ΠΈ ΠΎΡΠΊΡΡΡΡ PDB-ΡΠ°ΠΉΠ». "a.exe" (Win32). ΠΠ°Π³ΡΡΠΆΠ΅Π½ΠΎ "C:\Windows\SysWOW64\msvcrt.dll". ΠΠ΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ ΠΈΠ»ΠΈ ΠΎΡΠΊΡΡΡΡ PDB-ΡΠ°ΠΉΠ». "a.exe" (Win32). ΠΠ°Π³ΡΡΠΆΠ΅Π½ΠΎ "C:\Windows\SysWOW64\sechost.dll". ΠΠ΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ ΠΈΠ»ΠΈ ΠΎΡΠΊΡΡΡΡ PDB-ΡΠ°ΠΉΠ». "a.exe" (Win32). ΠΠ°Π³ΡΡΠΆΠ΅Π½ΠΎ "C:\Windows\SysWOW64\rpcrt4.dll". ΠΠ΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ ΠΈΠ»ΠΈ ΠΎΡΠΊΡΡΡΡ PDB-ΡΠ°ΠΉΠ». "a.exe" (Win32). ΠΠ°Π³ΡΡΠΆΠ΅Π½ΠΎ "C:\Windows\SysWOW64\sspicli.dll". ΠΠ΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ ΠΈΠ»ΠΈ ΠΎΡΠΊΡΡΡΡ PDB-ΡΠ°ΠΉΠ». "baner.exe" (Win32). ΠΠ°Π³ΡΡΠΆΠ΅Π½ΠΎ "C:\Windows\SysWOW64\cryptbase.dll". ΠΠ΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ ΠΈΠ»ΠΈ ΠΎΡΠΊΡΡΡΡ PDB-ΡΠ°ΠΉΠ». "a.exe" (Win32). ΠΠ°Π³ΡΡΠΆΠ΅Π½ΠΎ "C:\Windows\SysWOW64\msvcp120d.dll". ΠΠ΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ ΠΈΠ»ΠΈ ΠΎΡΠΊΡΡΡΡ PDB-ΡΠ°ΠΉΠ». "a.exe" (Win32). ΠΠ°Π³ΡΡΠΆΠ΅Π½ΠΎ "C:\Windows\SysWOW64\msvcr120d.dll". ΠΠ΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ ΠΈΠ»ΠΈ ΠΎΡΠΊΡΡΡΡ PDB-ΡΠ°ΠΉΠ».
But I think it does not influence