Einzelnen Beitrag anzeigen

Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.625 Beiträge
 
Delphi 12 Athens
 
#2

AW: Bedenkliche Typumwandlung AnsiString in PWideChar

  Alt 7. Apr 2017, 13:03
Was erwartet die DLL denn nun, einen PAnsiChar oder einen PWideChar? PChar ist ja nur ein Alias für den einen oder anderen Typen, je nach Delphi-Version.

[edit] Nach einer kurzen Recherche scheint es ANSI zu sein. Dann würde ich zunächst die Importdatei ändern:
IPS7Open (IPAdr : PAnsiChar; Rack : LongWord; Slot : LongWord; RxTimeout : LongWord; TxTimeout : LongWord ; ConnectTimeout : LongWord) : LongInt; stdcall; external 'IPS7LNK.DLL'; und dann den Aufruf:
Delphi-Quellcode:
var
  IP: AnsiString;
  IPvonAusserhalbEingelesen: String;
begin
  //...
  IP := AnsiString(IPvonAusserhalbEingelesen);
  Connection.ref := IPS7Open( PAnsiChar(IP), Connection.Rack { ... } );
[/edit]
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen

Geändert von DeddyH ( 7. Apr 2017 um 13:07 Uhr)
  Mit Zitat antworten Zitat