Hallo zusammen,
ich habe ein echt nerviges und ungewöhnliches Phänomen:
Ich rufe von meinem Hauptprogramm aus eine Funktion aus einer
DLL auf. In dieser Funktion wird dann irgendwann mit folgender Funktion auf den parallelen Port ein Escape-Kommando geschickt:
Delphi-Quellcode:
function writeparallel(myPortNo, daten: string):boolean;
var Myport : TLptport;
s : string;
pc : pchar;
i,len : integer;
begin
Result := true;
myport := TLptPort.Create(nil);
try
try
Myport.Open(StrToIntDef(myPortNo, 1));
if daten[2]='$' then
begin
s := copy(daten, 3, length(daten)-3);
s := hexstr(s);
len := length(s);
pc := StrAlloc(len + 2);
for i := 1 to length(s) do
pc[i-1] := s[i];
Myport.WriteBIN(pc, len);
StrDispose(pc);
end
else Myport.Write(daten);
except
Result := false;
end;
finally
Myport.free;
end;
end;
Die Variable MyPort ist vom Typ TLptPort, welches vom Typ TWindowsPort ist.
Das Kommando wird auch richtig an den Port geschickt und umgesetzt. Mein Problem besteht hinterher darin, dass wenn ich die Anwendung schließe eine
Exception kommt die ich nicht lokalisieren kann!
Ich hoffe mir kann jemand helfen.
Vielen Dank im Vorraus.
Gruß, Moony