2009-08-17 4 views

Antwort

2

Starten Sie Ihre Anwendung und lassen Sie Ihre Anwendung auf eine Benutzeraktion (Dialog oder etwas) warten. Öffnen Sie VS und gehen Sie zu "Debuggen" (Debugging) -> "Prozesse" Sie sehen die javaw.exe

Wählen Sie die javaw.exe und drücken Sie "Anfügen"

Lassen Sie Ihre Java-Anwendung laufen.

Wenn ich mich erinnere, muss die Codepage in C++, in der der Haltepunkt platziert wird, in VS geöffnet sein. VS wird die Seite nicht öffnen, wenn der Haltepunkt automatisch gedrückt wird. Wenn die DLL geladen wird und die Codezeile, in die Sie einen Haltepunkt setzen, ausgeführt wird, stoppt der Debugger in VS an dieser Position. Hinweis: Dies wird nur passieren, wenn Sie die DLL kompilieren, die Sie mit Debug-Optionen debuggen möchten !!! Andernfalls stoppt der Debugger nicht am C++ - Haltepunkt.

Ich tat dies vor einem halben Jahr, aber das sollte die richtigen Schritte sein.

Es hoffe, Sie bekommen es.

1

Sie haben zwei Möglichkeiten bekommen:

  1. wie in Markus Lausberg Antwort beschrieben, können Sie den Java-Prozess und befestigen Sie die VS-Debugger, um es starten.
  2. Die andere Option besteht darin, die Projekteinstellungen von Visual Studio zu verwenden, um java.exe als das Programm anzugeben, das beim Debuggen ausgeführt werden soll. Setzen Sie die notwendigen Klassenpfade und alles, was Sie sonst noch an Java übergeben würden, in die Kommandozeile, legen Sie das Arbeitsverzeichnis fest und wenn Sie den Debugger starten, wird Java gestartet, die Last Ihrer JNI-DLL wird abgefangen und Breakpoints usw. funktionieren erwartet.
Verwandte Themen