![]() |
Indy ReadBytes
Hallo Leute :)
ich versuche zur zeit einen Treiber für ein Messgerät zu programmieren (Signal Recovery LockIn7124). Zur Zeit lese ich die vom Gerät aufgenommen Daten mit der folgenden Prozedur aus:
Delphi-Quellcode:
Monitor gibt die Anzahl der aufgenommenen Werte wieder. 1Wert entspricht 2Bytes.
procedure GetBinaryOverIP;
var bytebuff: TIdBytes; bytezahl,valuezahl:integer; begin valuezahl:=(monitor); bytezahl:=2*valuezahl+3; with TCPClient do begin IOHandler.Write('dcb 0'); IOHandler.ReadBytes(bytebuff,bytezahl,false); end; end; Das Problem daran ist, dass das ganze sehr langsam abläuft. Der LabView-Treiber funktioniert ähnlich, nutzt jedoch statt der Indy-Komponenten die Visa-Komponenten und ist deutlich schneller. Liegt das eventuell an der ReadBytes Funktion oder im Aufbau der Prozedur, die ja eigentlich nicht so komplex ist :)? Sollte ich generell bei sowas einen anderen Ansatz wählen? Derzeit kann ich mit der Prozedur nur ungefähr 20kB in 10sek abrufen. lg estbrion |
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:19 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