Avatar billede elohim Nybegynder
01. februar 2002 - 15:35 Der er 19 kommentarer og
1 løsning

Hvorfor kan jeg ikke (registry)

      If  reg.readInteger > ''  then begin
        DT := Reg.ReadDate('Date and Time');
        Label1.Caption := DateToStr(DT);
        Label2.Caption := TimeToStr(DT);
      end;

Compileren siger for lidt parameter og står på
"If  reg.readInteger >(her står cursoren) ''  then begin
Avatar billede ziron Nybegynder
01. februar 2002 - 15:37 #1
prøv...

If  reg.readInteger > 0  then begin
        DT := Reg.ReadDate('Date and Time');
        Label1.Caption := DateToStr(DT);
        Label2.Caption := TimeToStr(DT);
      end;

/ZIRON
Avatar billede elohim Nybegynder
01. februar 2002 - 15:38 #2
PS Jeg ville gerne teste om der er en dato, hvis ikke skal den bare gå videre i programmet og ikke stoppe som den gør nu.
Avatar billede elohim Nybegynder
01. februar 2002 - 15:39 #3
Det er det samme Ziron
Avatar billede ziron Nybegynder
01. februar 2002 - 15:40 #4
hmmm du skal jo have den integer du vil læse :

If  reg.readInteger(den_du_vil_lege_med) > 0  then begin
        DT := Reg.ReadDate('Date and Time');
        Label1.Caption := DateToStr(DT);
        Label2.Caption := TimeToStr(DT);
      end;

/ZIRON
Avatar billede elohim Nybegynder
01. februar 2002 - 15:41 #5
Eller Reg.ReadDate, men det giver samme resultat
Avatar billede ziron Nybegynder
01. februar 2002 - 15:43 #6
hvad giver samme resultat?

/ZIRON
Avatar billede elohim Nybegynder
01. februar 2002 - 15:43 #7
Det er fordi jeg for en fejl, hvis der ikke er en værdi linie "DT := Reg.ReadDate('Date and Time');"
Hvis du har en anden måde at komme uden om fejlen, altså det at programmet stopper, så er jeg åben for det
Avatar billede elohim Nybegynder
01. februar 2002 - 15:44 #8
If  reg.readInteger(den_du_vil_lege_med) > 0  then begin
og
If  reg.readDate(den_du_vil_lege_med) > 0  then begin
giver samme resultat
FEJL
Avatar billede ziron Nybegynder
01. februar 2002 - 15:46 #9
hmmm det du skriver lige nu er lidt sort, prøv lige at skriv hvad det er du vil... og prøve lige at smide lidt mere kode, hvad er DT?

/ZIRON
Avatar billede elohim Nybegynder
01. februar 2002 - 15:52 #10
Altså jeg vil gerne have datoen i en binær-værdi som jeg spørger på.
Hvis værdien er der går det godt er den der ikke stopper programmet med de fejl som nævnt ovenfor. Og det er det jeg gerne ville undgå.
Her er hele koden:
unit Unit1;

interface

uses
  Windows, Registry, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  StdCtrls;

type
  TForm1 = class(TForm)
    Edit1: TEdit;
    Edit2: TEdit;
    Edit3: TEdit;
    Edit4: TEdit;
    Label1: TLabel;
    Label2: TLabel;
    procedure FormCreate(Sender: TObject);
    procedure FormDestroy(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.DFM}

procedure TForm1.FormCreate(Sender: TObject);
var
  Reg    : TRegistry;
  KeyGood : Boolean;
  Top, Left, Width, Height    : Integer;
  DT        : TDateTime;
begin
  Reg := TRegistry.Create;
  Try
    KeyGood := Reg.OpenKey('Software\SAMS\Delphi 4 in 21 Days', False);
    If KeyGood then begin
      Top := Reg.ReadInteger('Top');
      Left := Reg.ReadInteger('Left');
      Width := Reg.ReadInteger('Width');
      Height := Reg.ReadInteger('Height');
      SetBounds(Left, Top, Width, Height);
      {      WindowState := TWindowState(Reg.ReadInteger('WindowState'));}
      Edit1.Text := IntToStr(Left);
      Edit2.Text := IntToStr(Top);
      Edit3.Text := IntToStr(Width);
      Edit4.Text := IntToStr(Height);
      If  reg.readDate > 0 then begin
        DT := Reg.ReadDate('Date and Time');
        Label1.Caption := DateToStr(DT);
        Label2.Caption := TimeToStr(DT);
      end;
      Reg.CloseKey;
    end
    else
    ShowMessage('Denne nøgle findes ikke, tryk afslut for at skrive denne nøgle');
  Finally
    Reg.Free;
  end;
end;

procedure TForm1.FormDestroy(Sender: TObject);
var
  Reg    : TRegistry;
begin
  Reg := TRegistry.Create;
  Try
    Reg.OpenKey('Software\SAMS\Delphi 4 in 21 Days', True);
    Reg.WriteInteger('Top',Top);
    Reg.WriteInteger('Left',Left);
    Reg.WriteInteger('Width',Width);
    Reg.WriteInteger('Height',Height);
    Reg.WriteDate('Date and Time', Now);
    SetBounds(Left, Top, Width, Height);
  Finally
    Reg.Free;
  end;
end;


end.
Avatar billede ziron Nybegynder
01. februar 2002 - 15:56 #11
skal du ikke have dette på?

If  Reg.ReadDate('Date and Time') > 0 then begin

/ZIRON
Avatar billede elohim Nybegynder
01. februar 2002 - 16:05 #12
Jo så kan jeg compiler den, men får så fejlen "failed to get dat (Date and Time)"
Samme fejl for jeg hvis jeg ikke har har denne linie med :
If  reg.readDate(Date and Time) > 0 then begin
...
end;
Avatar billede elohim Nybegynder
01. februar 2002 - 16:14 #13
Der skal stå "If  reg.Keyexists('Date and Time') then begin"
Men nu kommer den slet ikke ind i :
        DT := Reg.ReadDate('Date and Time');
        Label1.Caption := DateToStr(DT);
        Label2.Caption := TimeToStr(DT);
      end;
men hopper til "Reg.CloseKey;" når jeg debugger
Avatar billede ziron Nybegynder
01. februar 2002 - 16:16 #14
hmm det ved jeg ikke helt, jeg har ikke så meget tid til at kigge på det, du kan sende reg-fil med de oplysninger du har til ziron@wanadoo.dk og så skal jeg kigge på det...

/ZIRON
Avatar billede elohim Nybegynder
01. februar 2002 - 16:36 #15
Hermed gjort og tak
Avatar billede ziron Nybegynder
01. februar 2002 - 16:38 #16
okay jeg kigger lige 2 sek...

/ZIRON
Avatar billede ziron Nybegynder
01. februar 2002 - 16:40 #17
hmm det jeg ville have var mere hvad der står i din regbase...

men okay...

/ZIRON
Avatar billede ziron Nybegynder
01. februar 2002 - 17:00 #18
hmm lidt underligt, kan du ikke bare lave det om til en string som du gemmer?

/ZIRON
Avatar billede elohim Nybegynder
01. februar 2002 - 18:57 #19
Se ser ud til at det False og True der driller
Nu har jeg prøvet at lave en knap der gør det samme som koden der ville vide om der står Date and Time i Reg.
Men det ser ud til at den hopper over Linien DT := Reg.ReadDate('Data and Time');
Nå vi får se hvis du kommer med et svar er det fint ellers må jeg vnete til senere ellers tak for hjælpen so fare
Avatar billede ziron Nybegynder
03. februar 2002 - 19:08 #20
den fik jeg ikke fat i, hmm kunne du ikke lige prøve igen, og hvad?

/ZIRON
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester