Debuggen und der Hostprozess
Dieses Thema gilt für folgende Anwendungsbereiche:
Edition |
Visual Basic |
C# |
F# |
C++ |
Web Developer |
---|---|---|---|---|---|
Express |
|||||
Pro, Premium und Ultimate |
Der Visual Studio-Hostprozess verbessert die Debugleistung und ermöglicht neue Debuggerfeatures, z. B. das Debuggen von teilweise vertrauenswürdigen Anwendungen und die Ausdrucksauswertung zur Entwurfszeit. Falls erforderlich, können Sie den Hostprozess deaktivieren. Weitere Informationen finden Sie unter Gewusst wie: Deaktivieren des Hostprozesses. In den folgenden Abschnitten werden einige der Unterschiede beschrieben, die zwischen dem Debuggen mit und ohne den Hostprozess bestehen.
Debuggen teilweise vertrauenswürdiger Anwendungen und ClickOnce-Sicherheit
Zum Debuggen teilweise vertrauenswürdiger Anwendungen ist der Hostprozess erforderlich. Wenn Sie den Hostprozess deaktivieren, ist das Debuggen teilweise vertrauenswürdiger Anwendungen nicht möglich, selbst wenn auf der Sicherheitsseite der Projekteigenschaften die Sicherheit bei teilweiser Vertrauenswürdigkeit aktiviert wurde. Weitere Informationen finden Sie unter Gewusst wie: Deaktivieren des Hostprozesses und Gewusst wie: Debuggen einer teilweise vertrauenswürdigen Anwendung.
Ausdrucksauswertung zur Entwurfszeit
Bei der Ausdrucksauswertung zur Entwurfszeit wird stets auf den Hostprozess zugegriffen. Wird der Hostprozess in den Projekteigenschaften deaktiviert, so wird damit auch die Ausdrucksauswertung zur Entwurfszeit für Klassenbibliotheksprojekte deaktiviert. Für die anderen Projekttypen steht die Ausdrucksauswertung zur Entwurfszeit weiterhin zur Verfügung. Visual Studio startet stattdessen die eigentliche ausführbare Datei und verwendet diese zur Evaluierung während der Entwurfszeit, ohne auf den Hostprozess zuzugreifen. Dies führt möglicherweise zu abweichenden Ergebnissen.
Unterschiede bezüglich "AppDomain.CurrentDomain.FriendlyName"
Abhängig davon, ob der Hostprozess aktiviert ist oder nicht, liefert AppDomain.CurrentDomain.FriendlyName unterschiedliche Ergebnisse. Wenn Sie AppDomain.CurrentDomain.FriendlyName bei aktiviertem Hostprozess aufrufen, wird app_name.vhost.exe zurückgegeben. Erfolgt der Aufruf bei deaktiviertem Hostprozess, wird app_name.exe zurückgegeben.
Unterschiede bezüglich "Assembly.GetCallingAssembly().FullName"
Abhängig davon, ob der Hostprozess aktiviert ist oder nicht, liefert Assembly.GetCallingAssembly().FullName unterschiedliche Ergebnisse. Wenn Sie Assembly.GetCallingAssembly().FullName bei aktiviertem Hostprozess aufrufen, wird mscorlib zurückgegeben. Wird Assembly.GetCallingAssembly().FullName bei deaktiviertem Hostprozess aufgerufen, wird der Anwendungsname zurückgegeben.
Siehe auch
Aufgaben
Gewusst wie: Debuggen einer teilweise vertrauenswürdigen Anwendung