Delphi-PRAXiS
Seite 4 von 4   « Erste     234   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Probleme mit Regedit und Form öffnen!! (https://www.delphipraxis.net/152-probleme-mit-regedit-und-form-oeffnen.html)

thomasdrewermann 15. Jun 2002 10:18

Also nochmal :D :
Code:
procedure TForm1.FormCreate(Sender: TObject);

var OK: Boolean;
reg:tregistry;
a:integer;
serial:string;
begin
  REG := TRegistry.Create;
  try
    try
      REG.RootKey := HKEY_CURRENT_USER;
      if REG.OpenKey('\Software\SELF', True) then
       begin
        if REG.ValueExists('CODE??') then a:=StrToInt(REG.ReadString('CODE??'))
        else a := 0;
        REG.CloseKey;
      end;
    except
       a := 0;
    end;
  finally
    REG.Free;
    if a=0 then
      begin
      serial:=inputbox('Seriennummer','Bitte geben sie ihre Seriennummer ein:','1234-1324-234');
      if serial ='' then
        application.Terminate else
        begin
        if CheckCode(serial,25, 7)=true then
          begin
          reg:=tregistry.Create;
          reg.RootKey:=HKEY_CURRENT_USER;
          if reg.OpenKey('\Software\SELF',True) then
            begin
            reg.WriteString('CODE??',serial);
            reg.free;
            end;
          end;
        end;
      end else
        begin
        if CheckCode(inttostr(a),25, 7)= false then
          begin
          serial:=inputbox('Seriennummer','Bitte geben sie ihre Seriennummer ein:','1234-1324-234');
          if serial ='' then
          application.Terminate else
            begin
            if CheckCode(serial,25, 7)=true then
              begin
              reg:=tregistry.Create;
              reg.RootKey:=HKEY_CURRENT_USER;
              if reg.OpenKey('\Software\SELF',True) then
                begin
                reg.WriteString('CODE??',serial);
                reg.free;
                end;
              end else   application.Terminate;
            end;
          end;
        end;
      end;
end;

Luckie 15. Jun 2002 10:31

@Thomas und alle die es interessiert:
http://www.delphipraxis.de/viewtopic.php?p=1101#1101

Christian Seehase 15. Jun 2002 13:55

Moin Zusammen,

nur wo ich gerade das Application.Terminate sehe:

Ablauf der Events beim Erzeugen/Schliessen eines Formulares

thomasdrewermann 17. Jun 2002 15:00

Hi m-werk,
funztz jetzt? :?:

m-werk 17. Jun 2002 20:04

Hi, ich glaube jetzt funktioniert es so wie es soll.

Ich habe nur noch was umgebaut.

if serial ='' then
application.terminate else

diese if serial habe ich beidemale ausgetauscht auf folgenden code:

if CheckCode(serial,25, 7)= false then
application.Terminate else

Grund war folgender. Wenn ich in die Inputbox z.B. nur '1234' eingegeben habe, dann ist zwar nichts in der Registry gestanden, aber das Programm hat sich trotzdem geöffnet.

Mit der Überprüfung, die ja immer sein soll, geht das jetzt nicht mehr.
Ich teste jetzt noch ne weile, aber fürs erste sieht es jetzt gut aus.

Sollte noch etwas nicht funktionieren betreffend der Inputbox, dann werde ich mich wieder melden.

Ich sage allen die mir geholfen haben DANKE, DANKE, DANKE


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:08 Uhr.
Seite 4 von 4   « Erste     234   

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz