Gibt es eine Möglichkeit festzustellen, ob Ihr Programm über Visual Studio geladen wurde oder ob es als eigenständiges Programm gestartet wurde?Erkennen, ob ein Programm von Visual Studio im Gegensatz zu Windows Explorer ausgeführt wurde
Unsere Software verfügt über eine Fehlerberichtsfunktion, um unbehandelte Ausnahmen zu behandeln - wir müssen in der Lage sein, Debug-Builds an unsere Beta-Tester zu verteilen, aber wir wollen nicht, dass der Fehlerbericht ausgelöst wird Entwicklung, weil die Ausnahmen viel nützlicher sind, wenn VS sie mit einer vollen Stapelverfolgung usw. abfängt.
Im Moment deaktiviere ich den Fehlerbericht, wenn Application.ExecutablePath
bin \ Debug oder bin \ Release enthält, aber ich denke Es gibt wahrscheinlich einen robusteren Weg festzustellen, ob das Programm über VS geladen wurde.
Natürlich könnten wir einen anderen Build mit einigen Präprozessor-Makros einrichten, aber für die Frage angenommen, dass dies keine Möglichkeit ist - ich habe nichts dagegen, Code hinzuzufügen, aber ich versuche zu machen Die wenigsten Änderungen am Build-Prozess. Daher sind Befehlszeilenoptionen auch ein letzter Ausweg.
Wenn es wichtig ist, verwende ich VS2003/.NET 1.1.
Das ist genau einer dieser "Ich weiß nicht, was ich ' Ich suche nach, aber ich werde es wissen, wenn ich es sehe "Art von Antworten - perfekt, danke! –
System.Diagnostics hat viele saftige Güte. – user7116
Eine Sache, vor der man sich hüten sollte, ist, ob ein Debugger angeschlossen ist und nicht, ob Visual Studio angeschlossen ist. Das Anfügen von WinDbg würde das gleiche Verhalten verursachen. – JaredPar