Unbehandelte Ausnahme bei Programmausführung

BenschM@ster

Mitglied
Guten Morgen allerseits,

ich muss die Ansteuerung für einen Schrittmotor von Nanotec in Matlab programmieren. Dafür möchte ich mittels C++ Code eine Cmex Datei erstellen und dann ausführen.

Leider habe ich nicht sehr viel Ahnung von C++, jedoch liefert der Hersteller ein Code Beispiel mit.
Jedoch bekomme ich nichtmal dieses Beispiel zum laufen, da das Programm nach dem Kompilieren mit dem Fehler

"Unbehandelte Ausnahme bei 0x7c812afb in UnmanagedC++Example.exe: Microsoft C++-Ausnahme: _com_error an Speicherposition 0x0012ff28.."

beendet.

Leider kann ich überhaupt nichts mit dem Fehler anfangen, und im Internet finde ich auch keine Hilfe dazu.

Das Projekt habe ich hier mal hochgeladen:
http://www.file-upload.net/download-7677356/SDK.zip.html


Wäre nett wenn jemand mal drüberschauen könnte.

Viele Grüße
Ben
 
Hi,

danke schonmal für deine Antwort :)
Nach dem Com Error werde ich nochmal gucken. War aber schon auf der Seite und die hat mir nicht so richtig geholfen.

Zu dem Zeitpunkt wo der Fehler auftritt ist aber noch nicht mehr passiert, als dass die COM Schnittstelle initialisiert ist:

Code:
int _tmain(int argc, _TCHAR* argv[])
{
    // Initialize COM.
    HRESULT hr = CoInitialize(NULL);

    // Create the interface pointers.
    IComMotorCommandsPtr motor1(__uuidof(ComMotorCommands));
	IComMotorCommandsPtr motor2(__uuidof(ComMotorCommands));

Der Fehler tritt in der Zeile IComMotorCommandsPtr auf.

Die Kommunikation über die Com Schnittstelle geht, da ich den Motor über die mitgeflierte Software problemlos ansteuern kann.

Viele Grüße
 
Hi,

danke schonmal für deine Antwort :)
Nach dem Com Error werde ich nochmal gucken. War aber schon auf der Seite und die hat mir nicht so richtig geholfen.

Zu dem Zeitpunkt wo der Fehler auftritt ist aber noch nicht mehr passiert, als dass die COM Schnittstelle initialisiert ist:
Ist sie das denn?

Da wird nirgendwo überprüft ob das auch tatsächlich der Fall ist. Was ist der Wert von hr? S_OK bzw. S_FALSE oder was anderes?
 
Hi, danke nochmal für die Antwort.

Das Problem war, dass die entsprechende DLL noch nicht in Windows registriert war. Bei Installation der treiber sollte dies eigtl. passieren, hat aber irgendwie nicht geklappt.

Danke nochmal!
 
Zurück