¿Cómo Puede Lidiar Con La Colocación De Puntos De Depuración A Lo Largo De Un Servicio De Windows?
October 21, 2021Recomendado: Fortect
En el tipo de los últimos días, algunos lectores se encuentran con un código de error que indica cómo agregar puntos de depuración para permitirles un servicio de Windows. Este problema bien podría surgir por varias razones. Es probable que hablemos de esto a continuación. gramo.En una pestaña de Aplicación de inicio completa del proyecto, establezca el Tipo de salida en Aplicación de consola. Seleccione Iniciar depuración (F5). Para ejecutar el programa como un servicio de Windows nuevamente, instálelo como lo haría normalmente para un servicio completo de Windows. Es posible que estos cambios no se tengan en cuenta.
gramo.
- 2 minutos más o menos para leer.
Es posible que pueda depurar un servicio real de Windows iniciando una empresa y adjuntando un depurador de confianza al proceso del servicio principal. Para obtener más información, consulte Cómo ayudarlo a depurar aplicaciones de servicio de Windows . Sin embargo, para depurar el programa Windows Service System.ServiceProcess.ServiceBase.OnStart , en realidad deberá iniciar el depurador que incluye este método.
En el comienzo específico del método
OnStart ()
, agregue una llamada hacia Launch .Recomendado: Fortect
¿Estás cansado de que tu computadora funcione lentamente? ¿Está plagado de virus y malware? ¡No temas, amigo mío, porque Fortect está aquí para salvar el día! Esta poderosa herramienta está diseñada para diagnosticar y reparar todo tipo de problemas de Windows, al tiempo que aumenta el rendimiento, optimiza la memoria y mantiene su PC funcionando como nueva. Así que no esperes más: ¡descarga Fortect hoy mismo!
- 1. Descargue e instale Fortect
- 2. Abra el programa y haga clic en "Escanear"
- 3. Haga clic en "Reparar" para iniciar el proceso de reparación
ganancias recubiertas void OnStart (string [] args) System .Diagnostics.Debugger.Launch ();
Inicie la satisfacción (puede iniciar ,
net, posiblemente en la ventana de servicios).
Debería ver un diálogo maravilloso que incluye esto:
Seleccione Depurar
. En la ventana del depurador Just-In-Time, seleccione su versión de Visual Studio para la que desea depurar.
Se inicia una nueva instancia fuera de Visual Studio y se detiene la representación mediante el método
Debugger.Launch ()
designado.
Ver también
A veces es extremadamente importante analizar qué sucede cuando comienza el servicio perfecto. Adjuntar a esta práctica no ayudará aquí, ya que no solo será lo suficientemente rápido si tiene que adjuntar un depurador durante el inicio de la operación.
Por lo general, la estrategia corta es: utilizo las siguientes arrugas de código:
#if DEBUG base.RequestAdditionalTime (600000); // sugiere 600 * 1000ms 10 minutos de tiempo de espera Debugger.Launch (); // Inicia el depurador, pero además adjúntalo#terminara si
A menudo se insertan en cada método OnStart
del siguiente servicio:
protegido anulación void OnStart (line [] args) #if DEPURAR base.RequestAdditionalTime (600000); diez // tracfone minutos de retraso en la salida Debugger.Launch (); // Ejecuta el depurador y colócalo #terminara si MyInitOnstart (); // mi inicialización personalizada favorita frente al código de servicio // Permite que la clase del sistema le permita hacer todo el trabajo que necesita actualmente base.OnStart (argumentos);
Para aquellos de ustedes, ¿qué tipo de persona aún no lo ha hecho? He tenido en cuenta los consejos detallados a continuación porque es muy fácil recibir un disparo b. La siguiente nota se aplica a Windows 7x64 y Visual Studio 2010 Team Edition, pero es posible que desee aplicar también a cualquier entorno adicional aplicable. Expandir
Importante: el proveedor está activo en el proceso "manual" (utilice la mayor parte de la utilidad InstallUtil
a través de la línea de demanda VS o ejecute la instalación del servicio que preparó). Visual Free Studio justo antes de comenzar el servicio al cliente y descargar una solución fabulosa que contiene la ley de origen para nuestro propio servicio: establezca puntos de interrupción más altos adicionales si necesita ambos en Visual Studio, luego de configurar el servicio utilizando el panel de configuración de asistencia.
Debido a algún tipo de código Debugger.Launch
, este resultado inesperado dará como resultado algún tipo de mensaje no controlado "Microsoft .NET Framework Exception Server name in.exe ha ocurrido". aparecer. Haga clic en Sí, depurar Servicename.exe , este tipo es la última captura de pantalla:
Después de eso, especialmente con respecto a Windows 7 UAC, es posible que se le soliciten las credenciales de oficial. Ingréselo junto con weiter mit Das, ja :
inmediatamente después de mostrar un área conocida detrás del estudio de ventana Visual S del depurador Just-In-Time. Le pregunta si desea depurar con un depurador que se haya limpiado. Antes del cursor Sí , asegúrese de que en realidad no desea volver a abrir una instancia de vanguardia (opción 2); una nueva instancia de partición no será conveniente aquí ya que la paginación de origen podría no mostrarse. En su lugar, considere el estudio Visual Instance que todos configuraron anteriormente:
Después de responder Sí , después de un tiempo Visual Studio está diseñado para mostrar una flecha amarilla a mi derecha con una línea que contiene un nuevo comentario Debugger.Launch
y sus necesidades pueden corregirlos. ... errores escriba su método ( MyInitOnStart
, qué tipo de probablemente contiene su inicialización).
Cuando su empresa presione F5 , lo más probable es que la ejecución continúe inmediatamente hasta que se alcance el punto de quiebre que su empresa preparó.
Sugerencia. Para mantener el servicio en funcionamiento, seleccione Depurar -> Deshabilitar todo. De esta manera, las personas pueden iniciar el cliente que se comunicaría con el servicio después de que este elemento se haya iniciado correctamente y, por lo general, se terminará la depuración del inicio. Si sale de Shift + F5 (detiene la depuración de esta situación) en el medio, el servicio ingresa isWe se detendrá. En cambio, los miembros de su familia deben usar la tabla de snowboard de control de servicio para detener esto.
-
Al formular una versión, el código de depuración ciertamente se puede eliminar automáticamente y la empresa funcionará bien.
Estoy usando
Debugger.Launch ()
, que descomprime y agrega un solo depurador. También sugiero examinarDebugger.Break ()
, que no funcionará porque el Neo-Debugger todavía está conectado al inicio apuntando a cada servicio (que indudablemente obtuvo 1067: "Error del proceso inesperadamente abortado . ").RequestAdditionalTime
que tiene un tiempo de espera más largo para la plataforma Itc (no retrasa el código, pero es probable que su sitio se inicie inmediatamente y contenga informes deDebugger .Launch
). De lo contrario, diría que a menudo el tiempo de espera predeterminado para los servicios expertos del lanzador es demasiado corto y, por lo tanto, a menudo el servicio del lanzador falla a menos que el universal llame abase.Onstart (args)
lo suficientemente seguro para el depurador. En el centro, un tiempo de espera de 10 minutos evita el mensaje de marketing "El servicio no respondió ..." rápidamente después de iniciar el depurador.Cuando te acostumbres, como concepto, este método podrá volverse muy simple, ya que solo necesitas insertar 4 líneas de código vinculado en el sistema de plataforma existente para que puedas ver y corregir errores rápidamente.
La forma más fácil de depurar es a menudo llamar a todas sus operaciones desde dentro del programa. cs Main () muestra los resultados en lugar de llamarlos desde una nueva empresa. Tenga en cuenta que esta estrategia solo se ha utilizado para depurar su código familiar.
Al configurar el método OnStart (), agregue la llamada telefónica real a Launch.Inicie su servicio (definitivamente usará net start off o quizás lo inicie en la ventana principal de proveedores).Seleccione Sí, depurar
Para agregar un procedimiento a su computadora local principal: En Visual Studio, vaya a Depurar> Adjuntar al proceso (o al periódico y tv Ctrl + Alt + P) si desea abrir el cuadro de diálogo Adjuntar al proceso. Compruebe el tipo de conexión.
How To Put Debug Point To Window Service
Comment Mettre Le Point De Debogage Au Service De Fenetre
Como Colocar O Ponto De Depuracao No Servico De Janela
디버그 포인트를 윈도우 서비스에 넣는 방법
Kak Postavit Tochku Otladki V Okonnuyu Sluzhbu
Come Mettere Il Punto Di Debug Nel Servizio Finestra
Hur Man Satter Felsokningspunkt Till Fonstertjanst
Hoe Een Foutopsporingspunt In De Vensterservice Te Plaatsen
Jak Umiescic Punkt Debugowania W Usludze Okna
So Setzen Sie Einen Debug Punkt Auf Den Windows Dienst