Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Speichern von Record-Problem (https://www.delphipraxis.net/126193-speichern-von-record-problem.html)

Teekeks 19. Dez 2008 17:44


Speichern von Record-Problem
 
Hi!
Ich habe ein Problem beim speichern eines Records.
Ich habe follgenden Quellcode:
Delphi-Quellcode:
unit Einstellungen;

{$mode objfpc}{$H+}

interface

uses
  Classes, SysUtils, LResources, Forms, Controls, Graphics, Dialogs, ExtCtrls,
  StdCtrls, ActnList;

type
  TSuche= record
    Suchanzeige:string;
    MAX_Suchbegr:integer;
  end;

  TTray= record
    Trayanzeigen:Boolean;
    Trayopen:Boolean;
  end;

  Spei= record
    Suche:TSuche;
    Tray:TTray;
  end;

  { TForm1 }

  TForm1 = class(TForm)
 //...
  private
    { private declarations }
  public
    { public declarations }
    Aktuell: Spei;
    Speicher: file of Spei;
  end;

var
  Form1: TForm1;

implementation

{ TForm1 }

procedure TForm1.FormShow(Sender: TObject);
begin
  Assignfile(Speicher,pathdelim+ExtractFilePath(paramstr(0))+pathdelim+'Data'+pathdelim+'sys.bve');
  Reset(Speicher);
  Aktuell:=Speicher;
  CloseFile(Speicher);
  Checkbox1.Checked:=Aktuell.Tray.Trayanzeigen;
  CheckBox2.Checked:=Aktuell.Tray.Trayopen;
  Edit1.Caption:=intToStr(Aktuell.Suche.MAX_Suchbegr);
  Edit2.Caption:=Aktuell.Suche.Suchanzeige;
end;
//...
Und ich kriege da die Meldung"Incopatibel types: got "file of Spei" expected "spei".

Was mach ich falsch??

gruß Teekeks

DP-Maintenance 19. Dez 2008 17:46

DP-Maintenance
 
Dieses Thema wurde von "Matze" von "Programmieren allgemein" nach "Sonstige Fragen zu Delphi" verschoben.
Delphi-Frage

roga 19. Dez 2008 17:59

Re: Speichern von Record-Problem
 
In Records stets die Stringlänge angeben!

Delphi-Quellcode:
TSuche= record
  Suchanzeige:string[255]; // Hier!!
  MAX_Suchbegr:integer;
end;

Teekeks 19. Dez 2008 18:04

Re: Speichern von Record-Problem
 
OK. Aber das Problem ist immernoch da...

DeddyH 19. Dez 2008 18:09

Re: Speichern von Record-Problem
 
Zitat:

Delphi-Quellcode:
Aktuell:=Speicher;

Das sind doch 2 unterschiedliche Typen, die kannst Du nicht zuweisen.

Teekeks 19. Dez 2008 18:22

Re: Speichern von Record-Problem
 
Sind doch beide vom Typ Spei. Nur das dass eine eben ein File davon ist.
Wie lese ich denn sonst Speicher in Aktuell ein?

DeddyH 19. Dez 2008 18:26

Re: Speichern von Record-Problem
 
Mit Read. Syntax:
Delphi-Quellcode:
Read(Dateivariable, Puffervariable);

Teekeks 19. Dez 2008 18:29

Re: Speichern von Record-Problem
 
OMG ist das peinlich... :oops:
das war zu einfach ^^

Danke!

gruß Teekeks

Teekeks 19. Dez 2008 18:41

Re: Speichern von Record-Problem
 
Hmm. jetzt konnte er immerhin Debuggen... aber beim aufrufen der Form kommt erst "Project raised exeption class 'RunError(2)'." und dann:
" Adresse: $08063900
Procedure: SYSTEM_HANDELEERRORADDRFRAME$LONGINT$POINTER$POINT ER
Datei:
"
Und bleibt dann bei
Delphi-Quellcode:
reset(Speicher);
stehen.

Was ist da jetzt schonwieder falsch?

gruß Teekeks

DeddyH 19. Dez 2008 18:47

Re: Speichern von Record-Problem
 
Gibt es die Datei schon? Wenn nicht, musst Du sie erst mit Rewrite anlegen.


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:32 Uhr.
Seite 1 von 2  1 2      

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