Mam EXE EXE, który jest napisany w VC++. Mam implementację napisaną w języku C#. Mam plik EXE VC++ pobierający bibliotekę DLL języka C#, jak tutaj: http://support.microsoft.com/kb/828736. Działa świetnie, ale muszę mieć możliwość debugowania. Oba projekty są ładowane do tego samego .SLN, ale punkty przerwania w C# nigdy nie zostają trafione. Czy istnieje sposób debugowania tego w VS2012?Debugowanie zarządzanego komponentu z C++ Win32
Odpowiedz
Ah, okazuje się, że jest to łatwe, jeśli znasz prawy przycisk do popchnięcia. We właściwościach projektu C++, Właściwości konfiguracji -> Debugowanie -> Typ debuggera = "Mieszany".
Spróbuj dodać odniesienie do projektu do C# Dll z projektu C++. Jeśli już to zrobiłeś, proszę posprzątaj rozwiązanie i zbuduj. To powinno rozwiązać problem.
Ustawiam punkt przerwania zaraz po utworzeniu komponentu C#. Patrząc na okno Moduły, widzę, że biblioteka DLL jest oznaczona "Moduł nie załadował się przy domyślnym adresie ładowania" i "Pominięto symbole ładowania dla pliku binarnego NGen." Kliknięcie przycisku Ładowanie informacji daje: "Ten moduł jest wstępnie skompilowanym plikiem binarnym utworzonym przez narzędzie ngen.exe.Debugger nie próbuje załadować symboli dla tych plików binarnych, ale zamiast tego załaduje symbole dla oryginalnego dll/exe, gdy jest ładowane przez środowisko wykonawcze .NET. " Kliknięcie przycisku Wczytuj symbole pozwala mi przeglądać plik .PDB (o czym już wie), ale nie pomaga. –
- 1. Używanie zarządzanego dll C++ z C#
- 2. Debugowanie trybu mieszanego (C#, C++) application
- 3. Korzystanie z metod rozszerzania C# z zarządzanego C++/CLI
- 4. Wydajność wywoływania niezarządzanego kodu z kodu zarządzanego
- 5. Generowanie widocznego zestawu COM z zarządzanego C++ (C++/CLI)
- 6. C++ Win32 Console Color
- 7. Object oriented C++ win32?
- 8. Podwójne buforowanie? Win32 C++
- 9. Tworzenie silnie imieniu zarządzanego (/ CLR) C++ montaż
- 10. Zwolnij pamięć niezarządzaną z zarządzanego C# za pomocą wskaźnika
- 11. Jak mogę zwrócić kod HTML z zarządzanego komponentu bean w JSF?
- 12. Jak uzyskać zarządzaną nazwę komponentu bean z wnętrza komponentu bean?
- 13. LLDB C++ debugowanie
- 14. Podczas próby pakowania natywnej klasy C++ za pomocą zarządzanego C++
- 15. Debugowanie preprocesora C++
- 16. debugowanie bezpłatnej rejestracji COM (C++)
- 17. Powracający wskaźniki z niekontrolowana do kodu zarządzanego
- 18. Debugowanie wątków C#
- 19. C Debugowanie drukowania makr
- 20. Jak przekazać funkcję delegata C# do zarządzanego pliku C++ .Dll?
- 21. Interfejs API win32 win32 api
- 22. C++/SDL Debugowanie z okienkiem konsoli
- 23. Zdalne debugowanie czystego programu C z GDB
- 24. C# - Odzyskiwanie właściwości komponentu COM +?
- 25. Problem z konsolą Win32:
- 26. Jak korzystać z kodu zarządzanego z kodu niezarządzanego?
- 27. debugowanie C# w linii poleceń
- 28. debugowanie z PyDev 1.5
- 29. Odczytywanie pliku PNG przy użyciu Win32/C++
- 30. Konwersja kodu Win16 C na Win32
Todd. Uratowałeś mi życie. – Sherlock