c++ HANDLE in Python

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
PyGast

c++ HANDLE in Python

Beitragvon PyGast » Donnerstag 26. Mai 2005, 10:18

HiHo,

Ich erstelle in einer gewrappten C++ Klasse ein HANDLE für ein Com Port. Nun möchte ich dieses HANDLE in meinem Python Programm ebenfalls verwenden können, damit ich aus meiner C++ Klasse und meinem Python Programm gleichzeitig auf die selbe Serielle Schnittstelle zugreifen kann.

Mit dem Python Programm wird nur gelesen und die C++ Klasse wird nur zum Schreiben verwendet.

Währe froh, wenn mir jemand helfen könnte, auch andere Lösungsvorschläge sind willkommen.

Gruss
Benutzeravatar
Joghurt
User
Beiträge: 877
Registriert: Dienstag 15. Februar 2005, 15:07

Beitragvon Joghurt » Donnerstag 26. Mai 2005, 11:38

Ich denke, mit boost.python solltest du recht einfach einen Wrapper basteln können.
http://www.boost.org/libs/python
PyGast

Beitragvon PyGast » Donnerstag 26. Mai 2005, 12:03

hiho.. vielen Dank...

Also das problem ist nicht das Wrappen, das funzt alles.. Das Problem ist, dass ein von C++ nach Python übergebener HANDLE unter Python nicht verwendbar ist.

Bsp.: ich möchte in python mit der pywin32 api schnittstelle auf die serielle Schnittstelle zugreifen:

win32file.WriteFile(HANDLE, "lalalalalla", overlapped())....

da kommt immer der Fehler, dass dies kein gültiger HANDLE sei.

ich nehme den handle aber direkt aus meiner gewrappten c++ klasse, was soweit auch funktionieren würde. Der Punkt ist, dass Python irgendwiä nicht die selber HANDLER braucht, bzw. der Typ nicht ganz genau das selbe ist wie bei C++.

Vielen Dank schonmal für weitere Antworten! ;))
CM
User
Beiträge: 2464
Registriert: Sonntag 29. August 2004, 19:47
Kontaktdaten:

Beitragvon CM » Donnerstag 26. Mai 2005, 21:58

Hoi,

meine Kenntnisse in Windows und seinen APIs sind nahe Null. Aber ich möchte vermuten, daß Dir niemand helfen kann, wenn Du nicht die relevanten Code-Schnipsel postest und auch noch die Fehlermeldung, die Du erhälst.

Gruß,
Christian

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder