[VS2015] Probleme beim Remote-Debuggen

vfl_freak

Premium-User
Hallo zusammen,

ich habe mehrere Projekte von VS2010 nach VS2015 portiert - nun wollte ich versuchen, eines davon in unseren Testsystem Remote zu debuggen.
Grundlegend vorweg:
Entwickung unter: OS: Win7 64-bit, VS2015 64-bit
Das Compilat kopiere ich am Ende auch auf ein Win7 64-bit-System, der Remotedebugger ebenfalls ist 64 bit (unter VS2010) gab es da noch Probleme, es lief nur mit einem 32-bit-Debugger)
Das Plattformtoolset muss leider auf 'v140 xp' stehen, da wir auf einigen Anwendungsrechner noch XP im Einsatz haben.

ERSTE FRAGE: was sagt mir der Eintrag "Version der Zielplattform: 8.1" (siehe Anlage "VS-Eigenschaften-1")
Dies ist so aus den Eigenschaften von VS2010 übernommen worden ...

Leider stoße ich jetzt auf ein unerwartetes Problem, bei Versuch den Debug-Monitor remote anzusprechen!
Scheint allerdings eine Assertion in den lokalen Datein hier auf dem Entwicklungsrechner zu sein.

Nachdem ich in der Konfiguration die Eigenschaft "Laufzeitbibliotheken bereitstellen" auf JA gesetzt hatte (Anlage "VS-Eigenschaften") habe ich mehrfach eine Verbindung zum Debugmonitor aufbauen können,
bekomme aber auch heute (genau wie gestern ständig) immer wieder die Meldung "unzulässiger Zugriff auf einen Speicherbereich" (siehe Anlage "VS-Fehlermeldung").
Um das Ganze einzugrenzen, habe ich es dann mal mit dem lokalen Debugger aufgerufen. Das Ergebnis war ein "Debug Assertion Failure" (siehe Anlage "VS-Fehlermeldung-1"). Nachdem Retry sprang er dann zum Haltepunkt, der in Anlage "VS-Fehlermeldung-2" zu sehen ist. Dies kommt aus der Datei "lseek.cpp" (Pfad siehe Anlage "VS-Fehlermeldung-1"), wobei der Filehandler 'fh' hier auf '-1' steht.

Eine fehlerhafte Installation des VS würde ich an sich mittlerweile ausschließen wollen, da ich ja wie gesagt ab und an debuggen kann.
Ich habe auch heute morgen mal die Installation des VS2015 reparieren lassen, da mir auffiel, dass es im Programm-Verzeichnis zu VS2010 einen Ordner "Packages/Debugger" mit einer DLLs gibt, der beim VS2015 fehlt (siehe Anlage "FileSystem"). Geändert hat sich dadurch nichts!

ZWEITE FRAGE: hat irgendjemand eine Idee, wodurch dieser "Debug Assertion Failure" verursacht werden könnte rsp. was ich dagegen tun kann ??

Ist leider viel Text geworden, aber ich wollte es so es geht beschreiben!
Falls weitere Infos notwendig sind, einfach Bescheid sagen!

In der Hoffnung auf eine Lösung
Gruß Klaus
 

Anhänge

  • FileSystem.jpg
    FileSystem.jpg
    14 KB · Aufrufe: 9
  • VS-Eigenschaften.jpg
    VS-Eigenschaften.jpg
    80,1 KB · Aufrufe: 9
  • VS-Eigenschaften-1.jpg
    VS-Eigenschaften-1.jpg
    86,3 KB · Aufrufe: 8
  • VS-Fehlermeldung.jpg
    VS-Fehlermeldung.jpg
    9 KB · Aufrufe: 8
  • VS-Fehlermeldung-1.jpg
    VS-Fehlermeldung-1.jpg
    28,3 KB · Aufrufe: 7
  • VS-Fehlermeldung-2.jpg
    VS-Fehlermeldung-2.jpg
    104,9 KB · Aufrufe: 9

Spyke

Premium-User
hi
ich schreib hier einfach mal auf wie wir über terminalserver unsere C# programme remote debuggen, vielleicht hilft es dir ja.

1. VS2015 Remote Debugger (msvsmon.exe) auf dem terminalserver starten

2. Projekteigenschaften -> Build:
2.1. start external programm haken setzten
exe programm mit netzwerkpfad dort eintragen z.B.:
\\meinterminalserver\c$\meindebug\test.exe
2.2. User remote machine haken setzen
server dort eintragen z.B.:
meinterminalserver

folgende post build events um nicht händisch die dlls umkopieren zu müssen:

3. neue Projekt cofiguration für remote debugging z.B.: RemoteDebugging

4. Projekt Eigenschaften -> Buid events:
4.1. postbuild event commandline: z.B.:
IF "$(ConfigurationName)"=="RemoteDebugging" xcopy /D /Y /S "$(TargetDir)*.*" \\meinterminalserver\c$\meindebug
4.2. Run the post-build event auf:
When the build updates the project output


zum schluss dann nur terminalserver starten
msvsmon.exe dort anstarten
visual studio auf debug cofiguration RemoteDebugging switchen
programm debuggen

vielleicht hilfts ja
 

Neue Beiträge