Visual Studio Kann Die Problembehandlung Für Windows-Dienste Nicht Debuggen
Table of Contents
Aktualisiert
Hier sind einige einfache Routinen, die Ihnen helfen können, die Idee zu lösen, dass Visual Studio nicht funktioniert, wodurch ein Windows-Dienstproblem behoben werden kann.Aufgrund der Beschaffenheit von Windows-Produkten und -Diensten ist Visual Studio nicht in der Lage, den Dienst zu initiieren und intern zu debuggen. Außerdem können Sie die Debug-Hilfe von Service Builder nicht anhängen, möglicherweise um das Startereignis zu debuggen. Dies liegt daran, dass Eigentümer keinen guten Prozess anhängen können, der wiederum nicht existiert!
In diesem Artikel
Bedeutende Serviceausführung ist aufgrund der Bedingungen unseres eigenen Service Control Managers, nicht Visual Studio, eine faire Chance. Aus diesem Grund ist das Debuggen eines Verteilers nicht so einfach wie das Debuggen aller anderen Typen von Visual Studio-Anwendungen. Um den Dienst zu debuggen, müssen Sie den Dienst ausführen und dann einen Debugger an den Prozess binden, in dem er ausgeführt wird. Sie können Ihre Anwendung jetzt debuggen, indem Sie viele der Features verwenden, die die mit Studio verbundenen visuellen Debugging-Features des Kriteriums umfassen.
Sie können jeden Debugger einfach an einen laufenden Dienst anhängen. Der Bindungsprozess unterbricht den laufenden Betrieb Ihres Dienstes; es stört oder unterbricht definitiv nicht die CPU des Dienstes. Das heißt, so wie Ihr Dienst zu Ihrem aktuellen Beginn des Debuggens ausgeführt wird, befindet er sich technisch im Grunde noch im Startzeitpunkt während des Debuggens, aber die Verarbeitung wurde gestoppt.
Nach dem Vorgang können Sie Breakpoints behandeln und sie verwenden, um den gesamten Code zu debuggen. Nachdem Sie den Dialog gerade verlassen haben, verwenden Sie ihn, um sich im Markt mit dem Prozess zu verbinden, wenn Sie möchten, der hier in den Debug-Modus wechselt. Sie können diesen Dienststeuerungs-Manager verwenden, um einen Dienst an den von allen festgelegten Haltepunkten zu starten, zu stoppen, anzuhalten und fortzusetzen und ein Begleitschreiben zu erstellen. Sie können diesen gefälschten aktiven Dienst später nach dem produktiven Debuggen entfernen.
Dieser Artikel verbirgt das Debuggen eines Dienstes, der häufig auf dem lokalen Computer ausgeführt wird, stellt jedoch auch dar. Ich bin in der Lage, Windows-Behandlungen zu debuggen, die leider auf dem perfekten Remote-Computer ausgeführt werden. Siehe Remote-Debugging .
So debuggen Sie einen Dienst
-
Erstellen Sie einen großartigen Dienst beim Debuggen der Konfiguration.
-
Installieren Sie den besten Service. Weitere Informationen finden Sie unter Erfolgreich: Installieren und Entfernen von Diensten .
-
Wie füge ich einem Werk in Visual Studio einen Dienst hinzu?
Treffen Sie in Visual Studio im Menü Debug eine Entscheidung An Prozess anhängen. Das Chat-Fenster Verarbeitung wird sicherlich erscheinen. Klicken Sie auf Systemgebäude anzeigen. Wählen Sie im Abschnitt Verfügbare Prozesse einen beliebigen Prozess für Ihren Dienst aus und klicken Sie häufig auf Anhängen.
Starten Sie den Dienst mithilfe von Service Control Server Manager, Datei-Explorer oder Code. Weitere Informationen finden Sie unter Direkter Einstieg: Dienste . Visuell
-
Starten Sie Studio und bieten Sie eine administrative Erfahrung, damit Sie sich mit Workflows verbinden können.
-
Warum funktionieren meine Dienstregeln in Visual Studio nicht?
Als Erstes müssen Sie Ihre Service-Tag-Nummer richtig auswählen. Wählen Sie im Windows-Startmenü oder Startbildschirm Visual Studio, Visual Studio-Tools, Entwicklereinladung aus. Das Visual Studio-Team wird im Laufe der Zeit angezeigt.
(Optional) Legen Sie in der Visual Studio-Rezeptleiste die Option Tools fest. Wählen Sie im spezifischen Dialogfeld Optionen Debug, Symbole aus, suchen Sie den Microsoft Symbol Server-Auswertungsbereich und klicken Sie auf OK.
-
Wählen Sie in der Menüleiste Attach, wenn Sie im Debug verarbeiten müssen, und dies kann sicherlich das Menü Extras sein. (Tastatur: Strg + Alt + P)
Das Dialogfeld Prozesse wird geöffnet.
-
Aktivieren Sie das Kontrollkästchen als nächstes, damit alle Benutzer von meinem ” angezeigt werden.
-
Wählen Sie im Abschnitt Verfügbare Prozesse den Prozess aus, der Ihrem Dienst ähnelt, und wählen Sie dann Attach.Process
Tipp
Es enthält die gleichen Informationen wie die ausführbaren persönlichen Produkte.
Das Diskussionsfeld “An Prozess anhängen” wird angezeigt.
-
Wählen Sie die entsprechenden Optionen aus und klicken Sie dann auf OK, um das Dialogfeld mit unserem wichtigsten Feld zu schließen.
Hinweis
Aktualisiert
Läuft Ihr Computer langsam, stürzt er ab oder zeigt Ihnen den Blue Screen of Death? Keine Angst, Hilfe ist da! Mit ASR Pro können Sie häufige Windows-Fehler schnell und einfach beheben, Ihre Dateien vor Verlust oder Beschädigung schützen und Ihren PC für maximale Leistung optimieren. Leiden Sie also nicht länger unter einem langsamen, veralteten Computer - laden Sie ASR Pro herunter und holen Sie sich Ihr Leben zurück!
- 1. Laden Sie ASR Pro herunter und installieren Sie es
- 2. Starten Sie das Programm und wählen Sie Ihre Sprache aus
- 3. Befolgen Sie die Anweisungen auf dem Bildschirm, um eine Überprüfung Ihres Computers auf Fehler zu starten
Sie befinden sich derzeit im Debug-Modus.
-
Legen Sie beliebige Breakpoints fest, mit denen Sie in Ihrem Code arbeiten möchten.
Greifen Sie auf den Dienststeuerungs-Manager zu und verwalten Sie Ihren Dienst, indem Sie eine Anleitung zum Anhalten, Anhalten und Fortsetzen bereitstellen, die Ihre Haltepunkte erreicht. Neue Richtlinien und Informationen zum Starten des Dienststeuerungs-Managers finden Sie unter So starten Sie Dienste . Weitere Informationen finden Sie unter Fehlerbehebung: Windows-Debugdienste . Tipps
Debugging für Windows-Dienste
Indem Sie sich an diesen speziellen Prozess für unseren Service halten, sollten Sie sicherlich die meisten, aber nicht alle damit verbundenen Codes für diese Organisation debuggen. Da dieser Dienstplan beispielsweise bereits ausgeführt wird, kann der Benutzer den Code in erster Linie nicht in einigen der Methoden OnStart eines Dienstes debuggen, oder normalerweise in einer Methode Main
verpackt in done in der Datei. die Art des Dienstes erstellt. Eine Methode, um diese Einschränkung zu umgehen, besteht darin, buchstäblich einen riesigen temporären zweiten Dienst in der Herstelleranwendung zu erstellen, da dieser nur für Debugzwecke existiert. Sie können beide Dienste installieren und zu diesem Zeitpunkt diesen Minion-Dienst starten, um den Dienstauftrag zu häufen. Nachdem der Heat-Level-Dienst den Prozess verschoben hat, können Sie die vollständige Debug-Collage in Visual Studio verwenden, wenn Sie eine Verbindung mit der Dienstfunktion herstellen müssen.
Versuchen Sie, weitere Anrufe und die Methode Sleep hinzuzufügen, wodurch die Aktion verschoben wird, bis Sie sich mit dem Prozess verbinden.
Versuchen Sie, vom Programm zu einem normalen Konsolenpaket zu wechseln. Schreiben Sie dazu jede Main
Prozedur wie folgt neu, sodass sie sowohl als Windows-Dienst als auch als Konsolenanwendung ausgeführt wird, je nachdem, wie sie gestartet wurde.
Anleitung: Führen Sie das Servicefenster als eine Steuergeräteanwendung aus
-
Fügen Sie Ihrem Expertenprogramm eine Methode hinzu, die eine OnStart Methode ausführt, dann alle OnStop :
intern blank TestStartupAndStop (string [] args) this.OnStart (Argumente); Konsole .ReadLine(); this.OnStop();
-
Schreiben Sie jede der Methoden um, die unsere
Hauptmethoden
als Verwendungszwecke verwenden:static void Main (string [] args) Wenn (Environment.UserInteractive) MyNewService service1 bedeutet new MyNewService (Argumente); service1.TestStartupAndStop (Argumente); unterschiedlich // Fügen Sie hier den Rumpf der Retro-Hauptmethode ein.
-
Legen Sie auf der Registerkarte Anwendung in den Arbeitsplatzeigenschaften fest, dass der Ausgabetyp eine Konsolenanwendung unterstützt.
-
Wählen Sie Debugging starten (F5).
-
Um das Programm zu beschleunigen, sobald ein Windows-Dienst installiert ist, während es als Windows-Support neu gestartet wird. Diese Produktänderungen können nicht geändert werden.
In einigen Fällen, beispielsweise beim Debuggen von Amtsleitungsunterbrechungen, müssen Sie den Windows-Debugger verwenden. Laden Sie unser Windows-Treiberkit herunter und (wdk) finden Sie Windows-Dienste wie und auch Debugging .
Siehe auch
- Übersicht über Windows-Dienstanwendungen
- Anleitung: Dienste installieren und entfernen
- Anleitung: Starten Sie die Dienste
- Debug-Dienst
- Artikel
- eine Handvoll Minuten. lesen
Sie würden nicht an einem Verfahren hängen, wenn Sie nicht genau wissen, was es ist und sich nicht an die Folgen einer häufigen Unterbrechung sowie der Unterbrechung des Prozesses erinnern. Wenn Sie beispielsweise eine WinLogon-Methode hinzufügen, dann aber den Debug-Modus verlassen, wird das World Wide Web-Hosting angehalten, da es ohne WinLogon nicht verfügbar ist.
Um beim Debuggen wichtige Informationen zu erhalten, muss der Visual Studio-Debugger persönlich Symbolinformationen nach den genauen Binärdateien durchsuchen, um das Debuggen zu beenden. Wenn Sie einen Kundenservice debuggen, den Sie ursprünglich in Visual Studio erstellt haben, befinden sich die meisten persönlichen Symboldateien (.pdb-Dateien) in genau demselben Ordner wie die EXE-Datei oder die Auswahlmöglichkeiten, und der Debugger gruppiert sie für Sie. Wenn Sie wahrscheinlich einen Dienst debuggen, den Kunden noch nicht erstellt haben, müssen Sie zunächst die dem Dienst zugewiesene Bedeutung ermitteln und sicherstellen, dass der Debugger junge und alte Personen problemlos finden kann. Siehe Angeben von Symbolen (.pdb) und Quelldateien im aktuellen Visual Studio-Debugger . Wenn Sie die Systemetagen debuggen möchten Wenn Sie jedoch Symbole mit Systemaufrufen in Ihren Prozeduren haben, sollten Sie erwägen, Microsoft Symbol Server hinzuzufügen. Siehe Debug-Symbole .
Der Name des Prozesses ist der gleiche wie der Name aller exe-Dateien Ihres Dienstes.
Klicken Sie hier, um einen kostenlosen Download zu erhalten, der Ihnen hilft, Ihren PC aufzuräumen.Visual Studio Cannot Debug Windows Service
Visual Studio Kan De Windows Service Niet Debuggen
Visual Studio No Puede Depurar El Servicio De Windows
Visual Studio는 Windows 서비스를 디버그할 수 없습니다
Visual Studio Ne Peut Pas Deboguer Le Service Windows
Visual Studio Ne Mozhet Otlazhivat Sluzhbu Windows
Visual Studio Nie Moze Debugowac Uslugi Windows
O Visual Studio Nao Pode Depurar O Servico Do Windows
Visual Studio Non Puo Eseguire Il Debug Del Servizio Windows
Visual Studio Kan Inte Felsoka Windows Tjansten
