レジストリに値を挿入するためのテストプログラムが動作しません。 Googleまたはこのウェブサイトで解決策を見つけられませんでした。プログラムを管理者として実行すると、即座に終了し、レジスタは変更されません。C++がレジストリに値を挿入していません
HKEY hkey;
const char PATH[] = "C:\\Program Files\\Windows NT\\Accessories\\wordpad.exe";
RegOpenKeyEx(HKEY_LOCAL_MACHINE,
"SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run",
0,
KEY_WRITE,
&hkey);
RegSetValueEx(hkey,
"TestWordPad",
0,
REG_SZ,
(BYTE*)PATH,
strlen(PATH));
RegCloseKey(hkey);
return 0;
私はデバッグを開始した後は、出力がこれです:
'ConsoleApplication1.exe'(Win32の):ロード 「C:\ Users \ユーザーヤクブ\デスクトップ\ ConsoleApplication1 \デバッグ\ ConsoleApplication1.exe ' シンボルがロードされました。 'ConsoleApplication1.exe'(Win32):ロードされた 'C:\ Windows \ SysWOW64 \ ntdll.dll'。 PDBファイルを見つけたり開くことができません。 'ConsoleApplication1.exe'(Win32): 'C:\ Windows \ SysWOW64 \ kernel32.dll'をロードしました。 PDBファイルを見つけたり開くことができません。 'ConsoleApplication1.exe'(Win32): 'C:\ Windows \ SysWOW64 \ KernelBase.dll'が読み込まれました。 PDB ファイルを見つけたり開くことができません。 'ConsoleApplication1.exe'(Win32): 'C:\ Windows \ SysWOW64 \ advapi32.dll'をロードしました。 PDBファイルを見つけたり開くことができません。 'ConsoleApplication1.exe'(Win32): 'C:\ Windows \ SysWOW64 \ msvcrt.dll'が読み込まれました。 PDBファイルを見つけたり開くことができません。 'ConsoleApplication1.exe'(Win32): 'C:\ Windows \ SysWOW64 \ sechost.dll'が読み込まれました。 PDBファイルを見つけたり開くことができません。 'ConsoleApplication1.exe'(Win32): 'C:\ Windows \ SysWOW64 \ rpcrt4.dll'が読み込まれました。 PDBファイルを見つけたり開くことができません。 'ConsoleApplication1.exe'(Win32): 'C:\ Windows \ SysWOW64 \ sspicli.dll'が読み込まれました。 PDBファイルを見つけたり開くことができません。 'ConsoleApplication1.exe'(Win32): 'C:\ Windows \ SysWOW64 \ cryptbase.dll'が読み込まれました。 PDBファイルを見つけたり開くことができません。 'ConsoleApplication1.exe'(Win32): 'C:\ Windows \ SysWOW64 \ vcruntime140d.dll'が読み込まれました。 PDB ファイルを見つけたり開くことができません。 'ConsoleApplication1.exe'(Win32): 'C:\ Windows \ SysWOW64 \ ucrtbased.dll'が読み込まれました。 PDBファイルを見つけたり開くことができません。 'ConsoleApplication1.exe'(Win32): 'C:¥Windows¥SysWOW64¥api-ms-win-core-timezone-l1-1-0.dll'が読み込まれました。 が見つからないか、PDBファイルが開けません。 'ConsoleApplication1.exe'(Win32): 'C:¥Windows¥SysWOW64¥api-ms-win-core-file-l2-1-0.dll'が読み込まれました。または PDBファイルを開くことができません。 'ConsoleApplication1.exe'(Win32): 'C:¥Windows¥SysWOW64¥api-ms-win-core-localization-l1-2-0.dll'が読み込まれました。 PDBファイルを検索または開くことができません。 'ConsoleApplication1.exe'(Win32): 'C:¥Windows¥SysWOW64¥api-ms-win-core-synch-l1-2-0.dll'が読み込まれました。または PDBファイルを開くことができません。 'ConsoleApplication1.exe'(Win32): 'C:¥Windows¥SysWOW64¥api-ms-win-core-processthreads-l1-1-1.dll'が読み込まれました。 PDBファイルを見つけたり開くことができません。 'ConsoleApplication1.exe'(Win32): 'C:¥Windows¥SysWOW64¥api-ms-win-core-file-l1-2-0.dll'がロードされました。 PDBファイルを検索または開くことができません。プログラム '[3052] ConsoleApplication1.exe'がコード0(0x0)で終了しました。
https://msdn.microsoft.com/en-us/library/windows/desktop/ms724897(v=vs.85).aspx https://msdn.microsoft.com/en-us/library/windows /desktop/ms724923(v=vs.85).aspx戻り値を確認します。 – ABuckau
あなたが見ているエラーは、すべて「PDBファイルを見つけることができないか開いていません」です。これは、デバッグのためにシンボルなしでライブラリを使用していることを意味しますが、結果には影響しません。 –
管理者プログラムとして実行するとアクセスが拒否される通常の書き込みを実行する – Marek