IowKitReadImmediate funktioniert nur für Interface 0, nicht für die Special Mode Functions!orange-blue wrote:Nächstes Problem: wenn ich IowKitReadImmediate aufrufe verlangt vb beim Parameter buffer ein byval, was aber nicht funktionieren kann, da ja nix in die variable gespeichert werden kann.
IOW24 und IR
Moderator: Guido Körber
-
- Site Admin
- Posts: 2856
- Joined: Tue Nov 25, 2003 10:25 pm
- Location: Germany/Berlin
- Contact:
Ne
ByRef buffer As Long
ByRef buffer As Long
Code: Select all
Public Declare Function IowKitReadImmediate _
Lib "iowkit.dll" _
(ByVal iowHandle As Long, _
ByRef buffer As Long) _
As Long
-
- Posts: 28
- Joined: Wed Feb 23, 2005 5:26 pm
-
- Posts: 28
- Joined: Wed Feb 23, 2005 5:26 pm
ReadImmediate geht bei den Special-Modes nicht !BeitragVerfasst am: Mo März 21, 2005 13:38 Titel:
aso na dass hat bei mir schon gefunzt. woll halt nur ReadImmediate nehmen, weil sonst mein Programm stecken bleibt wenn ich auf einen tasten druck warte(kenn mich mit threads in vb net aus).
achso und mein Beispiel hat mit Threads im Moment noch nichts zu tun.
-
- Posts: 28
- Joined: Wed Feb 23, 2005 5:26 pm
-
- Posts: 28
- Joined: Wed Feb 23, 2005 5:26 pm
Moin,
tja weil dein Timer in dem gleichen Prozess läuft wie dein Programm
sprich sie haben die gleiche Thread-ID.
Und somit blockiert dein Read den Prozess allgemein bis neue Daten kommen.
Wie gesagt das ganze muss man mit 2 Threads erledigen,
einer für deine Oberfläche und einer für dein Read.
zumindest hab ich es so gemacht.
Bei mir lauft das ganze über eine Active-x.dll welche ich dann
im Hauptprojekt als Verweis eingebunden habe und somit im
Hintergrund als eigener Thread läuft .
Sobald die Read - Methode neue Daten bekommt, liefert mir
ein Event die Daten an mein Hauptprogramm zurück.
Und es funktioniert einwandfrei.
MFG Jörg
tja weil dein Timer in dem gleichen Prozess läuft wie dein Programm
sprich sie haben die gleiche Thread-ID.
Und somit blockiert dein Read den Prozess allgemein bis neue Daten kommen.
Wie gesagt das ganze muss man mit 2 Threads erledigen,
einer für deine Oberfläche und einer für dein Read.
zumindest hab ich es so gemacht.
Bei mir lauft das ganze über eine Active-x.dll welche ich dann
im Hauptprojekt als Verweis eingebunden habe und somit im
Hintergrund als eigener Thread läuft .
Sobald die Read - Methode neue Daten bekommt, liefert mir
ein Event die Daten an mein Hauptprogramm zurück.
Und es funktioniert einwandfrei.
MFG Jörg