Die Suche ergab 12 Treffer

von Jaspar
Montag 23. März 2009, 11:04
Forum: Allgemeine Fragen
Thema: [ctypes] Pointer auf Struktur als Argument
Antworten: 22
Zugriffe: 5551

Hallo HWK,

Deine Idee mit der eigenen DLL hatte ich bereits. Ich habe eine entsprechende Wrapper-DLL geschrieben in der ich dann die originäre API-Funktion aufrufe, um dann nur den interessanten Parameter float temp an Python zurückzugeben. Im Python-Skript habe ich dann den resulttype der API ...
von Jaspar
Freitag 20. März 2009, 15:43
Forum: Allgemeine Fragen
Thema: [ctypes] Pointer auf Struktur als Argument
Antworten: 22
Zugriffe: 5551

driverHandles[0] ist ein c_long.
von Jaspar
Freitag 20. März 2009, 14:15
Forum: Allgemeine Fragen
Thema: [ctypes] Pointer auf Struktur als Argument
Antworten: 22
Zugriffe: 5551

Nein, soweit ich weiß ist far nicht üblich bei 32-Bit Systemen. Die Bibliothek kapselt aber wohl über Präprozessordirektiven das zugrundeliegende Betriebssystem und ersetzt das Schlüsselwort far dann durch einen Leerstring.
von Jaspar
Donnerstag 19. März 2009, 15:04
Forum: Allgemeine Fragen
Thema: [ctypes] Pointer auf Struktur als Argument
Antworten: 22
Zugriffe: 5551

Hallo HWK,

ich denke nicht, aber prizipiell sollen wohl auch 16-Bit Systeme unterstützt werden.
von Jaspar
Donnerstag 19. März 2009, 11:41
Forum: Allgemeine Fragen
Thema: [ctypes] Pointer auf Struktur als Argument
Antworten: 22
Zugriffe: 5551

Heyho,

vielen Dank für die Hilfe.

Ich werde mal schauen, ob ich bei der Mailingliste weitere Hilfe finde.



Liebe Grüße,

Jas
von Jaspar
Donnerstag 19. März 2009, 11:06
Forum: Allgemeine Fragen
Thema: [ctypes] Pointer auf Struktur als Argument
Antworten: 22
Zugriffe: 5551

Das führt nach wie vor zu einer access violation writing 0x00000000
rayo hat geschrieben: Ist LPT_TCMuxRead einfach ein Pointer auf TCMUXREAD?
Ja.
von Jaspar
Donnerstag 19. März 2009, 10:31
Forum: Allgemeine Fragen
Thema: [ctypes] Pointer auf Struktur als Argument
Antworten: 22
Zugriffe: 5551

Hey,

static PT_TCMuxRead ptTCMuxRead


typedef struct tagPT_TCMuxRead
{
USHORT DasChan;
USHORT DasGain;
USHORT ExpChan;
USHORT TCType;
USHORT TempScale;
FLOAT far *temp;
} PT_TCMuxRead


[Edit 1] Dein letzter Vorschlag führt wieder zu einer access violation writing 0x00000000
von Jaspar
Donnerstag 19. März 2009, 10:10
Forum: Allgemeine Fragen
Thema: [ctypes] Pointer auf Struktur als Argument
Antworten: 22
Zugriffe: 5551

Hey,

den gesamten Code, oder nur den Funktionsaufruf?

Der gesamte Code ist relativ umfangreich.

[Edit 1] Ich hab mal einen Auszug eingefügt.
[Edit 2] Paste #108614
von Jaspar
Donnerstag 19. März 2009, 10:03
Forum: Allgemeine Fragen
Thema: [ctypes] Pointer auf Struktur als Argument
Antworten: 22
Zugriffe: 5551

Heyho,

inzwischen bin ich einen Schritt weiter.
Wenn ich die Struktur wie ursprünglich definiere:


class TCMUXREAD(ctypes.Structure):
_fields_ = [("dasChan", ctypes.c_ushort),
("temp", ctypes.c_float * 1)]



Und dann die API-Funktion folgendermaßen aufrufe:



TCMuxRead(driverHandles[0 ...
von Jaspar
Donnerstag 19. März 2009, 08:54
Forum: Allgemeine Fragen
Thema: [ctypes] Pointer auf Struktur als Argument
Antworten: 22
Zugriffe: 5551

Hallo rayo,

ich habe Deine Idee gerade einmal ausprobiert.
Leider ist das Ergebnis unverändert.

Ich erhalte folgende Fehlermeldung:

WindowsError: exception: access violation reading 0x0000000C
von Jaspar
Mittwoch 18. März 2009, 19:35
Forum: Allgemeine Fragen
Thema: [ctypes] Pointer auf Struktur als Argument
Antworten: 22
Zugriffe: 5551

Hallo rayo,

ich kann Deinen Vorschlag erst morgen ausprobieren.
Ich melde mich dann. Vielen Dank schon mal.
von Jaspar
Mittwoch 18. März 2009, 18:19
Forum: Allgemeine Fragen
Thema: [ctypes] Pointer auf Struktur als Argument
Antworten: 22
Zugriffe: 5551

[ctypes] Pointer auf Struktur als Argument

Hallo Community,

ich habe eine Frage zur korrekten Adaption einer C-Struktur, sowie dem entsprechenden Funktionsaufruf der API-Funktion.

Die Datenstruktur in C sieht folgendermaßen aus:




typedef struct{
unsigned short dasChan
float* temp
} tcMuxRead


Es gibt nun eine API-Funktion welche ...