Delphi Expert Help benodigd!!!

Pagina: 1
Acties:

  • Darkvater
  • Registratie: Januari 2001
  • Laatst online: 26-08-2024

Darkvater

oh really?

Topicstarter
Ik heb een erg vreemd probleem:
Zie het code hieronder:

procedure OpenConf(LunLin, LunCel: integer; Line_File, Cel_File: string; NumSys, Nlin, Ncel, Ier: integer);
var
FName: file;
begin
Ier := 1;
// LineFile := 'c:\mystuff\occup\occupc1.dat';
AssignFile(FName, Line_File);
Reset(FName, (LINES_RECL+3));
BlockRead(FName, Line1, 1);
// Form1.Label1.Caption := IntToStr(NumSys);
if Line1.sys <> NumSys then
begin
raise Exception.Create('Error');
Exit;
end;
Form1.Label1.Caption := 'LastLineRec = ' + IntToStr(Line1.LastLineRec) + ' sys = ' + IntToStr(Line1.sys);
Exit;
end; {OpenConf}

Zie het code hierboven. NumSys is een variabele die bij het aanroepen van deze file wordt doorgegeven, en is 1. Line_File is het bestand dat ik wil openen. Met BlockRead lees ik het eerste record in, in type FirstLine (Line1, bestaat uit 2 integers). Als ik het inlees wordt Line1.LastLineRec 10 en Line1.sys 1 (bijvoorbeeld). Daarna wil ik Line1.sys en NumSys vergelijken. Maar op het moment dat ie bij de if statement aankomt, verandert NumSys opeens in 15 :? ???????
Het vreemdste is is als ik dat Form1.Label1.Caption voor de if terugzet (uncomment), dan blijft NumSys wel mooi 1 en gaat alles goed :? ???

Iemand enig idee?


Windows Vista? *NEVER* Het waarom - Opera forever!!!
I've seen chickens that were more menacing. Chickens in a coma. On ice. In my fridge