21 Nov 2007

Debug C++ from a C# application

Si vous avez un projet C# qui appelle un DLL d'un projet en C++ voici la méthode pour debugger la DLL en C++ tout en lançant le projet principal en C#.

If you have a C# project which calls a DLL from a C++ project, here the way for debugging the C++ DLL while launching the principal project in C++.





1) Mettre des points d'arrêt dans le C++.
1)Put some breakpoints in C++ code.


2) Dans les propriétés de la DLL en C++, dans l'onglet debugging, changer le path de Remote Directory avec le chemin de l'exécutable en C#.

2) In the C++ DLL properties, in the debugging tab, change the Remote Directory path with the C# executable.








3) Lancer le projet via un clic droit sur le projet C++ et en cliquant Debug/Start new instance

3) Launch the project via a right click on the C++ project and then click on Debug/Start new instance.



Ensuite, si vous avez positionné des points d'arrêt dans le C++, le debugger s'arrêtera donc sur ces points d'arrêt.

Then, if you have set breakpoints in the C++ code, the debugger will stop on these breakpoints.

1 comment:

Anonymous said...

Mon sauveur !

Merci pour ce petit tuto, qui fonctionne evidemment a merveille et permet de combler (partiellement, certes) un gros soucis des DLL en unmanaged c++ pour les Device apps...

Merci beaucoup !