Delphi-PRAXiS
Seite 1 von 3  1 23   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Fehlermeldung bei Verwendung von AssignFile (https://www.delphipraxis.net/124739-fehlermeldung-bei-verwendung-von-assignfile.html)

UweR 24. Nov 2008 14:52


Fehlermeldung bei Verwendung von AssignFile
 
Hallo Leute,

bin gerade dabei ein altes Programm von D5 auf D7 umzustellen. Dabei haut mir der D7 eine Fehlermeldung um die Ohren mit der ich absolut nicht gerechnet habe und die ich mir auch absolut nicht erklären kann. Bei dem Code

Delphi-Quellcode:

var
   FPassword : File of TPassword;
     Password : TPassword;
     i : integer;

begin
   result := '';
     AssignFile(FPassword, sCUCMPath + '\cucm32.cpw');
meint er: [Fehler] Es gibt keine überladene Version von 'AssignFile', die man mit diesen Argumenten aufrufen kann

TPassword sieht übrigens so aus:

Delphi-Quellcode:
   TPassword = record
      acData : array[0..255] of char;
        acControl : array[0..7] of char;
   end;
Anyone any ideas?

Noedel 24. Nov 2008 14:54

Re: Fehlermeldung bei Verwendung von AssignFile
 
ersetz mal char mir string[1]

UweR 24. Nov 2008 15:00

Re: Fehlermeldung bei Verwendung von AssignFile
 
Hilft nicht, ich habe auch spasshalber mal die char-arrays durch integer ersetzt. Ergebnis ist das gleiche.

DeddyH 24. Nov 2008 15:01

Re: Fehlermeldung bei Verwendung von AssignFile
 
Von welchem Typ ist sCUCMPath?

UweR 24. Nov 2008 15:03

Re: Fehlermeldung bei Verwendung von AssignFile
 
sCUCMPath ist string, das kanns nicht sein. Wenn ich File of TPassword durch TextFile ersetze ist der Compiler auch an dieser Stelle erst mal glücklich.

Noedel 24. Nov 2008 15:05

Re: Fehlermeldung bei Verwendung von AssignFile
 
also bei mir sieht ne speichern procedure so aus
Delphi-Quellcode:
procedure save;
var
  f : FILE OF meinrecord;
  dateiname : STRING;
  rec: meinrecord
begin
  ASSIGN(f,dateiname); {Dateiname initialisieren}
  REWRITE(f); {Datei falls vorhanden überschreiben}
  WRITE(f,rec); {Record schreiben}
  CLOSE(f); {Datei schließen}
end;

DeddyH 24. Nov 2008 15:06

Re: Fehlermeldung bei Verwendung von AssignFile
 
Vielleicht gibt es irgendwo eine Klasse TPassword, die sich mit der Deklaration beißt. Was passiert denn, wenn Du den Record mal nach TPasswort umbenennst und FPassword dann als file of TPasswort deklarierst?

UweR 24. Nov 2008 15:13

Re: Fehlermeldung bei Verwendung von AssignFile
 
Es muss irgendein Seiteneffekt oder eine Einstellungssache sein. Wenn ich ein neues Projekt mit D7 anlege und mir den Code da rein haue geht's auch ohne Mecker. Es kann aber nicht an TPassword liegen weil es mir auch anderen Stellen passiert wo ich mit typisierten Dateien arbeite.

DeddyH 24. Nov 2008 15:15

Re: Fehlermeldung bei Verwendung von AssignFile
 
Da können wir aus der Ferne leider auch nur raten. Und das kommt bei jeder typisierten Datei im Projekt?

nahpets 24. Nov 2008 15:17

Re: Fehlermeldung bei Verwendung von AssignFile
 
Hallo,

dasda kann ich mit Delphi 7 problemlos kompilieren:

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
Type
  TPassword = record
    acData   : array[0..255] of char;
    acControl : array[0..7] of char;
  end;

var
   FPassword : File of TPassword;
   Password : TPassword;
   i        : integer;
   sCUCMPath : String;
begin
  sCUCMPath := 'C:';
  AssignFile(FPassword, sCUCMPath + '\cucm32.cpw');
  // System.AssignFile(FPassword, sCUCMPath + '\cucm32.cpw');
end;
Versuch mal, ob bei Dir die im Beispiel auskommentierte Version funktioniert. Eventuell hast Du ja irgendeine Unit eingebunden, die ebenfalls ein AssignFile enthält, dass aber andere (oder keinen) Parameter erwartet.


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:35 Uhr.
Seite 1 von 3  1 23   

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