Registry
-
Hallo,
ich habe versucht nach einem Tutorial einen Registry - Eintrag zu schreiben.
So:// TaskMgrSperre.cpp: Hauptprojektdatei. #include "stdafx.h" #include <Windows.h> using namespace System; int main(array<System::String ^> ^args) { Console::WriteLine(L"Hello World"); HKEY hKey; RegCreateKeyEx(HKEY_CURRENT_USER,L"Software\\Microsoft\\Windows\\CurrentVersion\\Policies\\System",0,0,REG_OPTION_NON_VOLATILE,KEY_ALL_ACCESS,NULL,&hKey,0); DWORD dwNumber=1; RegSetValueEx(hKey,L"DisableTaskMgr",0,REG_DWORD,(BYTE*)&dwNumber,sizeof(DWORD)); return 0; }
Doch ich bekomme haufenweise Fehlermeldungen, mit denen ich nichts anfangen kann:
(rausgenommen)
Ich habe schon lange nicht mehr so hilflos vor Fehlermeldungen gestanden
Kann mir jemand helfen?
Ich wollte nur für mich den Taskmanager per C++ Code sperren.
-
Erzeuge ein normales Win32-Konsolenprojekt (kein C++/CLI)!
Die Fehlermeldung besagt, daß dem Linker noch die passende Lib fehlt. Daher immer in der MSDN nachschauen, z.B. für RegSetValueEx (unter "Requirements" / "Library")
Bei dir also "Advapi32.lib" (diese sollte dann aber schon standardmäßig beim Win32-Projekt eingebunden sein, ansonsten noch bei den Projekteinstellungen unter "Linker" / "Input" / "Additional Dependencies" hinzufügen - auf die Schnelle habe ich folgende Seite mit Screenshots dafür gefunden: Visual Studio .NET C++ Project Settings).P.S. Mach mal ein paar Umbrüche in deine geposteten Fehlermeldungen, damit man nicht so scrollen muß...
-
Dankeschön!
Es gibt jetzt keine Fehlermeldungen mehr.
Doch wenn ich das Programm ausführe:// TaskMgrSperre.cpp : Definiert den Einstiegspunkt für die Konsolenanwendung. // #include "stdafx.h" #include <Windows.h> int _tmain(int argc, _TCHAR* argv[]) { HKEY hKey; RegCreateKeyEx(HKEY_CURRENT_USER,L"Software\\Microsoft\\Windows\\CurrentVersion\\Policies\\System",0,0,REG_OPTION_NON_VOLATILE,KEY_ALL_ACCESS,NULL,&hKey,0); DWORD dwNumber=1; RegSetValueEx(hKey,L"DisableTaskMgr",0,REG_DWORD,(BYTE*)&dwNumber,sizeof(DWORD)); RegCloseKey(hKey); return 0; }
werden trotzdem keine Änderungen durchgeführt.
Auch wenn ich das Programm als Administrator ausführe.Woran liegt das?
-
Wie ich schon schrieb, immer in der MSDN nachschauen. Bei dir jetzt konkret: du solltest den Rückgabewert der Funktionen überprüfen...
-
Dieser Thread wurde von Moderator/in Jochen Kalmbach aus dem Forum C++/CLI mit .NET in das Forum WinAPI verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.
-
http://www.hawkee.com/snippet/5756/
http://www.planet-source-code.com/vb/scripts/ShowCode.asp?txtCodeId=11882&lngWId=3
-
Player894 schrieb:
RegSetValueEx(hKey,L"DisableTaskMgr",0,REG_DWORD,
Haha, so hab ich auch programieren angefangen xD