AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Delphi Seriennummer Informationen in Registry schreiben
Thema durchsuchen
Ansicht
Themen-Optionen

Seriennummer Informationen in Registry schreiben

Ein Thema von dor557 · begonnen am 21. Aug 2010 · letzter Beitrag vom 6. Mär 2012
 
Benutzerbild von dor557
dor557

Registriert seit: 23. Okt 2004
Ort: Walldorf
197 Beiträge
 
Delphi 10.1 Berlin Starter
 
#32

AW: Seriennummer Informationen in Registry schreiben

  Alt 30. Aug 2010, 10:42
Du kannst natürlich die Adminrechte anfordern vom UAC.
Dann machst du ein Knopf mit Schild "Seriennummer eingeben". Dieser Knopf impersonated dann zum Admin.

Sakura (Daniel) hat dazu Beispiel gemacht?!
Zumindest habe ich mal eine Demo gesehen.
Ich habe nach der Demo gesucht. Nichts Gefunden. Aber Das wäre schon net schlecht wenn man zur laufzeit einfach die Adminrechte abrufen kann um etwas aus zu führen.
Wo hassn das gesehen ?

So aber was anderes. Was mich nun total verwirrt. Ich hoffe auf Erleuchtung.

Ich hatte zum Lesen folgenden Code geschrieben :

Delphi-Quellcode:
   Reg := TRegistry.Create;
   with Reg do
   begin
      RootKey := HKEY_LOCAL_MACHINE;
      Ver := inttostr(Version.Hauptversion) + '.' + inttostr(Version.Nebenversion);
      Ver_new := ver;
      OpenKeyReadOnly(RegPath+Ver);
      if KeyExists('S/NR') then
        MainConfig.SENR := ReadString('S/NR') else MainConfig.SENR := '';
      if KeyExists('firma') then
        MainConfig.Firma := ReadString('firma') else MainConfig.Firma := '';
      CloseKey;
    end;
so nun (Ich weiss ich wiederhole mich) in XP konnte die Funktion KeyExists mir ein true geben. Unter 7 ein False. (Vista noch nicht versucht)

nun habe ich eine naja mehr oder weniger eingebung gehabt und habe mir gedacht das Keys ja eigentlich nicht die Einträge sind sondern die Schlüssel "Ordner".

also kam Folgendes dabei raus :

Delphi-Quellcode:
   Reg := TRegistry.Create;
   with Reg do
   begin
      RootKey := HKEY_LOCAL_MACHINE;
      Ver := inttostr(Version.Hauptversion) + '.' + inttostr(Version.Nebenversion);
      Ver_new := ver;
      OpenKeyReadOnly(RegPath+Ver);
      if ValueExists('S/NR') then
        MainConfig.SENR := ReadString('S/NR') else MainConfig.SENR := '';
      if ValueExists('firma') then
        MainConfig.Firma := ReadString('firma') else MainConfig.Firma := '';
      CloseKey;
    end;


So nun kann ich das wenn die Software als Admin gestartet ist speichern und als user lesen

Aber nun erkläre mir mal jemand das XP das akzeptiert hat obwohl es eigentlich ja schon von anfang an falsch programmiert wurde oder ?
Sascha Nickel
Man muss die Dinge nehmen wie sie kommen, man kann aber auch dafür sorgen das die dinge so kommen wie man sie nehmen möchte.
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:02 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