![]() |
RegDeleteKeyEx wie geht das ??
Hallo,
ich möchte einen Key in der Registry von Windows 7 64Bit Version löschen. Habe ![]() KUBA |
AW: RegDeleteKeyEx wie geht das ??
Delhihilfe? Windows SDK? Forensuche? Google?
|
AW: RegDeleteKeyEx wie geht das ??
Hallo Lucky,
habe unendlich gegoogelt und diesen Code gefunden:
Delphi-Quellcode:
Funktioniert aber nicht...
procedure RegDeleteKeyEx(const RootKey: HKEY; const SubKeyName: String;
const samDesired: Cardinal); Habe den Code dann geändert:
Delphi-Quellcode:
aber wenn ich einen key löschen will stürzt mein Programm ab:
procedure RegDeleteKeyEx(const RootKey: HKEY; const SubKeyName: String;
const samDesired: Cardinal); external 'advapi32.dll' name 'RegDeleteKeyExW';
Delphi-Quellcode:
was läuft falsch ??
RegDeleteKeyEx(HKEY_LOCAL_MACHINE, '\Software\Test', KEY_WOW64_64KEY);
KUBA |
AW: RegDeleteKeyEx wie geht das ??
Zitat:
|
AW: RegDeleteKeyEx wie geht das ??
Zitat:
|
AW: RegDeleteKeyEx wie geht das ??
Letzte Zeile im Beitrag übersehen.
Wie sieht die Fehlerbehandlung aus? Was sagt GetLastError? |
AW: RegDeleteKeyEx wie geht das ??
keine Ahnung, bin zu müde heute
morgen wieder ... Das ist nicht mein Code. Ich mache nur die Fehler raus :stupid: KUBA |
AW: RegDeleteKeyEx wie geht das ??
Zitat:
Code:
Themen-Optionen -> Abonnement dieses Themas löschen
|
AW: RegDeleteKeyEx wie geht das ??
Zitat:
musste unbedingt schlafen, hatte gestern eine lange Reise. Das Thema hat mir keine Ruhe gelassen :pale: heute gehts wieder ... Fehlerbehandlung ?? GetLastError ? Muss mal überlegen :cat: Erstmal schauen was mein Kätzchen macht, die hat mich ein paar Tage nicht gesehen. KUBA |
AW: RegDeleteKeyEx wie geht das ??
Nur so am Rande: Du willst aus HKEY_LOCAL_MACHINE unter Windows 7 löschen. Hast Du dazu denn überhaupt die Berechtigung? Wenn das Programm als normaler User läuft, wirst Du da nichts löschen können.
Grüße, Uli |
AW: RegDeleteKeyEx wie geht das ??
Hy,
ja das ist mir schon klar, habe mein Programm mit Administratorberechtigung gestartet. KUBA |
AW: RegDeleteKeyEx wie geht das ??
Hy,
habe die Prozedur zu einer Funktion umgebaut:
Delphi-Quellcode:
In meinem Programm rufe ich das so auf:
function RegDeleteKeyEx(const hKey: HKEY;const lpSubKey: string;
const samDesired: REGSAM; reserved : DWORD): boolean; stdcall; external 'advapi32.dll' name 'RegDeleteKeyExW';
Delphi-Quellcode:
Als Fehlermeldung erhalte ich: "der Vorgang wurde erfolgreich beendet"
if RegDeleteKeyEx(HKEY_LOCAL_MACHINE, '\Software\Test', KEY_WOW64_64KEY, 0) then
showmessage(SysErrorMessage(GetLastError)) else showmessage(SysErrorMessage(GetLastError)); Der Schlüssel in der Registry wurde jedoch nicht gelöscht, was läuft falsch ?? KUBA |
AW: RegDeleteKeyEx wie geht das ??
Bitte verwende Delphi-Tags (Delphi-Icon) bei Delphi-Code. Und innerhalb 24 Stunden kannst du deinen letzten Beitrag ändern/erweitern, wenn dir noch etwas winfällt und noch keinen geantwortet hat; den Pushen sehen wir hier nicht so gerne
|
AW: RegDeleteKeyEx wie geht das ??
Du hast auch den kompletten Artikel aus dem MSDN zu RegDeleteKeyEx gelesen?
Zitat:
|
AW: RegDeleteKeyEx wie geht das ??
|
AW: RegDeleteKeyEx wie geht das ??
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo,
hab mir alles nochmal fein durchgelesen und noch einige Tests gemacht. Mittlerweile weiss ich warum es nicht funktioniert hat. Beim Schlüssel darf der erste Backslash nicht vorkommen, z.B.: 'software\test'. 2 Testprogramme habe ich nochmal angehangen.. KUBA |
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:50 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz