Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/338.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何使用c执行vsjitdebugger.exe#_C# - Fatal编程技术网

C# 如何使用c执行vsjitdebugger.exe#

C# 如何使用c执行vsjitdebugger.exe#,c#,C#,我想使用以下代码为某些进程执行“vsjitdebugger.exe”: var myapp = Process.Start(@"path\to\myapp.exe"); Process.Start("vsjitdebugger.exe", $"-p {myapp.Id}").WaitForExit(); 但是失败了。 退出代码为“-1”,不显示窗口 要执行vsjitdebugger.exe,我必须做什么 UPATE#1 我只想立即将调试器附加到特定进程。 这就是为什么我提倡代码方式而不是注册方

我想使用以下代码为某些进程执行“vsjitdebugger.exe”:

var myapp = Process.Start(@"path\to\myapp.exe");
Process.Start("vsjitdebugger.exe", $"-p {myapp.Id}").WaitForExit();
但是失败了。
退出代码为“-1”,不显示窗口

要执行vsjitdebugger.exe,我必须做什么

UPATE#1
我只想立即将调试器附加到特定进程。
这就是为什么我提倡代码方式而不是注册方式

要以管理员身份执行:

var myapp = Process.Start(@"path\to\myapp.exe");
Process.Start(new ProcessStartInfo()
{
     FileName = @"vsjitdebugger.exe",
     Arguments = "-p {myapp.Id}",
     Verb = "runas"
}).WaitForExit();

UAC屏幕后也失败。

通过代码运行实时调试器对您不起作用,因为您必须以管理员权限运行才能使用它

您可以做的是在所需进程上启动调试器

我建议在尝试通过C#执行流程之前,也阅读更多关于VisualStudio的JIT的内容


这根本不安全,被认为是不好的做法。除非有紧急需要,否则我建议你先最大限度地利用你所有的其他可能性

请阅读本文,这与他试图在某个进程上运行JIT调试器不同。谢谢@Barr J。