.net - punto - visual studio attach to process
¿Cómo adjunto un proceso al depurador en Visual Studio? (5)
En Visual Studio 2015, haga clic en ''Depurar> Adjuntar para procesar'' en el menú. Alternativamente, hay un atajo de teclado Ctrl + Alt + P.
Sé que puedo iniciar un proceso en código con Process.Start()
. ¿También es posible adjuntar el depurador a ese proceso?
¿No del código per se , sino solo una forma de hacerlo?
En el estudio visual, haga clic en Herramientas | Adjuntar al proceso. Luego seleccione el servicio apropiado.
Puede adjuntar a un proceso en ejecución utilizando Tools | Attach to Process
Tools | Attach to Process
. Si se trata de una aplicación web, puede adjuntarla adjuntando a aspnet_wp.exe
o w3wp.exe
.
Para responder a su pregunta sobre cómo adjuntar a un proceso mediante programación:
Aquí hay otras preguntas de desbordamiento de pila que tratan con eso:
Puedes hacer esto en casi cualquier depurador que valga la pena.
Visual Studio tiene uno que debe adaptarse a sus necesidades.
Si necesitas un poco más de control avanzado, prueba OllyDbg , que es un desensamblador, para que puedas manipular tu programa en el nivel de ensamblaje. Esto le dará un control completo, pero también podría ser una sobrecarga de información.
Puedes hacer esto en tu código.
public static void Attach(DTE2 dte)
{
var processes = dte.Debugger.LocalProcesses;
foreach (var proc in processes.Cast<EnvDTE.Process>().Where(proc => proc.Name.IndexOf("YourProcess.exe") != -1))
proc.Attach();
}
internal static DTE2 GetCurrent()
{
var dte2 = (DTE2)Marshal.GetActiveObject("VisualStudio.DTE.12.0"); // For VisualStudio 2013
return dte2;
}
Uso:
Attach(GetCurrent());