![]() |
Speichern von Record-Problem
Hi!
Ich habe ein Problem beim speichern eines Records. Ich habe follgenden Quellcode:
Delphi-Quellcode:
Und ich kriege da die Meldung"Incopatibel types: got "file of Spei" expected "spei".
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; //... Was mach ich falsch?? gruß Teekeks |
DP-Maintenance
Dieses Thema wurde von "Matze" von "Programmieren allgemein" nach "Sonstige Fragen zu Delphi" verschoben.
Delphi-Frage |
Re: Speichern von Record-Problem
In Records stets die Stringlänge angeben!
Delphi-Quellcode:
TSuche= record
Suchanzeige:string[255]; // Hier!! MAX_Suchbegr:integer; end; |
Re: Speichern von Record-Problem
OK. Aber das Problem ist immernoch da...
|
Re: Speichern von Record-Problem
Zitat:
|
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? |
Re: Speichern von Record-Problem
Mit Read. Syntax:
Delphi-Quellcode:
Read(Dateivariable, Puffervariable);
|
Re: Speichern von Record-Problem
OMG ist das peinlich... :oops:
das war zu einfach ^^ Danke! gruß Teekeks |
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:
stehen.
reset(Speicher);
Was ist da jetzt schonwieder falsch? gruß Teekeks |
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. |
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