![]() |
Seriennummer Informationen in Registry schreiben
Servus zusammen.
Mal wieder ein Windows Vista / 7 Problem. Ich habe bisher immer unter XP die Seriennummer Informationen meiner Programme unter HKEY_LOCAL_MACHINE/SOFTWARE/.... Gespeichert. Nun scheint das aber nicht mehr zu gehen. Selbst wenn ich als Admin starte werden die Daten nicht gespeichert. Ich bekomme nichtmal eine Fehlermeldung. irgendwie raff ich nicht wieso. weiss jemand rat ?? hier mal der Code der das Speichern soll :
Delphi-Quellcode:
gruss Sascha
Procedure TMainForm.Reg_Sav;
var Reg : TRegistry; ver : String; begin Reg := TRegistry.Create; with Reg do begin RootKey := HKEY_LOCAL_MACHINE; OpenKey('Software\DeveloperName\AppName\', True); WriteString('firma', MainConfig.Firma); WriteString('S/NR', MainConfig.SENR); CloseKey; Free; end; end; |
AW: Seriennummer Informationen in Registry schreiben
Wie wäre es mal mit einer richtigen Fehlerbehandlung? Desweiteren wäre es recht nützlich, wenn du uns mitteilst unter welchem Windows es nicht mehr funktioniert.
Aber meine Glaskugel sagt mir, dass die Virtualisierung zuschlägt. Nähere Informationen dazu im Forum. |
AW: Seriennummer Informationen in Registry schreiben
Hallo,
dies funktioniert bei allen Windows-Versionen, auch wenn ESK noch nicht existiert:
Delphi-Quellcode:
try
reg:=tregistry.Create; reg.RootKey:=HKey_Local_Machine; reg.OpenKey('Software\ESK',true); reg.WriteString('ID',s); reg.CloseKey; except reg.Free; messagedlg(_('Nicht genügend Rechte vorhanden.')+#13+ .... end; |
AW: Seriennummer Informationen in Registry schreiben
Hey,
ich steh derzeit vor der gleichen Problematik: ![]() Ich werd hier auch meine Lösung posten, sobald ich sie gefunden habe ;-) LG |
AW: Seriennummer Informationen in Registry schreiben
Zitat:
Ich würde die ganzen Infos sowieso unter HKEY_CURRENT_USER packen. |
AW: Seriennummer Informationen in Registry schreiben
Ach Mist. Hier in der Reha verblödet man irgendwie.
|
AW: Seriennummer Informationen in Registry schreiben
Zitat:
|
AW: Seriennummer Informationen in Registry schreiben
Zitat:
Zitat:
Zitat:
Zitat:
Zitat:
Zitat:
Ein Versuch: ;)
Delphi-Quellcode:
Noch einer:
Function TMainFormUndSo.RegSaveUserLizense(Firma, Serial: string): boolean;
var Reg : TRegistry; ver : String; begin Result := False; Reg := TRegistry.Create; try with Reg do begin RootKey := HKEY_LOCAL_USER; OpenKey('Software\DeveloperName\AppName\', True); WriteString('Firma', Firma); WriteString('S/NR', Serial); CloseKey; Result := True; end; finally Reg.Free; end; end;
Delphi-Quellcode:
Noch einer:
Function TMainFormUndSo.RegSaveUserLizense(Firma, Serial: string): boolean;
var ver : String; begin Result := False; with TRegistry.Create do try RootKey := HKEY_LOCAL_USER; OpenKey('Software\DeveloperName\AppName\', True); WriteString('Firma', Firma); WriteString('S/NR', Serial); CloseKey; Result := True; finally Free; end; end;
Delphi-Quellcode:
( ungetested ! )
Function TMainFormUndSo.RegSaveUserLizense(Firma, Serial: string): boolean;
var ver : String; begin Result := False; with TRegistry.Create do try RootKey := HKEY_CURRENT_USER; OpenKey('Software\DeveloperName\AppName\', True); try try WriteString('Firma', Firma); WriteString('S/NR', Serial); Result := True; except on E: Exception do ShowMessage('Folgender Fehler trat auf:'#13 + E.Message); end; finally CloseKey; end; finally Free; end; end; procedure TMainFormUndSo.FormCreate(Sender: TObject); begin if not RegSaveUserLizense('Numpsi', 'CA1002030E8554401AF090EFF') then {...} ; end; PS.: und ja, mir ist langweilig. |
AW: Seriennummer Informationen in Registry schreiben
Erstmal danke für die ganzen Antworten.
Mal eine Frage allgemein zur Registry..... Irgend wie habe ich da den sinn nicht verstanden. HKEY_CURRENT_USER speichert doch die Daten nur in dem Aktuellen Benutzer der angemeldet ist wie der Schlüssel schon sagt. Oder nicht ? HKEY_LOCAL_MACHINE speichert die Daten doch SYSTEMWEIT was doch wenn man die Seriennummer nur ein mal eingeben will und nicht bei Jedem Benutzer einzeln mehr sinn machen würde oder ? Noch eine Frage... Woher kommt HKEY_LOCAL_USER ??? und warum kann ich diesen eintrag in der Regedit nicht direkt sehen ??? Oder bin ich etwas auf dem Holzweg.... @TurboPascal : Danke für die Ausführungen ;) werde diese dann entspechend umsetzen. Ich habe noch einiges in der Software aus zu bessern und mit entsprechender Fehlersuche aus zu statten damit das Debuggen hinterher besser Funktioniert. @Alle anderen : Auch euch danke. Aber ist es nicht so das ein Runtime Error oder eine Fehlermeldung so oder so auftaucht wenn man die Procedure nicht in eine Try...Except schleife gesetzt hat ? zumindest war das bisher immer so. Habe noch nicht so oft Programme in Vista oder Windows 7 in verwendung gehabt. Nun habe ich nen Laptop mit Windows 7 und ich muss mal schauen das ich da das TurboDelphi installieren kann ;) mal schauen ob das klappt. unter vista war es schon schwer genug... |
AW: Seriennummer Informationen in Registry schreiben
Zitat:
Zitat:
Zitat:
Diese wird aufgelöst, du siehst also das Profil des aktuell angemeldeten Nutzers. Ist ein Verweis auf HKEY_USERS\<USER-SID> |
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:14 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