C-DLL in C# einbinden und debuggen



  • Hallo Lesende,

    vielleicht kann mir einer von Euch weiterhelfen.

    Für die Entwicklung einer Firmware soll auf dem PC ein Emulator geschrieben werden. Bisher habe ich dafür die GUI in C++ mit Hilfe der MFC geschrieben und den C-Code in einem eigenen Thread gestartet und entwickelt. Jetzt sollen die Vorteile von C# (WPF) für die Entwicklung der Oberfläche genutzt werden. Soweit ist das auch kein Problem, Die C-Main kann ich aus WPF heraus starten und auch Werte aus C in WPF anzeigen. Ich schaffe es jedoch nicht in den C-Code hinein zu debuggen. Die folgenden Varianten habe ich probiert:

    C#-EXE ruft C-DLL
    C#-EXE ruft C++DLL(/clr) ruft C-DLL
    C#-EXE ruft C++DLL(/clr) mit C-LIB
    C#-EXE ruft C++DLL(/clr) mit integrierten C-Code(natürlich ohne /clr)

    Alle Varianten funktionieren problemlos. Aber ich kann bei keiner in den C-Code debuggen. Auch das nachträglichen Anhängen an den Prozess lässt kein Debug zu.

    Wenn ich die C-Dll aus einer C++EXE starte ist das Debuggen kein Problem.

    Frage:
    Wie kann ich die C-DLL debuggen wenn Sie von einer C#-EXE gestartet wurde?

    Vielen Dank
    Uwe



  • Du musst in den Projekteinstellungen nur "Managed + Native" debugging aktivieren!



  • Danke.

    Manchmal kann das Leben so einfach sein...


Log in to reply