如何在以admin权限执行的进程中运行命令
本文关键字:进程 运行 命令 执行 权限 admin | 更新日期: 2023-09-27 18:10:07
我想创建一个自签名证书并使用c#程序安装它。我使用makecert制作证书,我以管理员的身份运行它,并在ProcessStartInfo中传递命令。参数但命令不执行代码中的问题是什么?
下面是我的代码: public void Createasnewadmin()
{
ProcessStartInfo info = new ProcessStartInfo();
Process p = new Process();
info.FileName = Application.StartupPath+@"'makecert.exe";
info.UseShellExecute = true;
info.Verb = "runas"; // Provides Run as Administrator
info.Arguments = "makecert testCert_admin_check.cer";
//i just create sample certificate but it doesn't get created
//The problem is above line the command doesn't get execute
p.StartInfo=info;
p.Start()
}
请告诉我问题在哪里,是不是没有以管理员身份执行?或者要执行的命令没有正确传递?
我认为它是执行作为管理员,因为我自己点击是按钮执行作为管理员,这是由windows
提示为什么命令没有执行?还有别的办法吗?
看一看你的代码,我怀疑你得到一个错误,因为你的参数是不正确的。
info.Arguments = "makecert testCert_admin_check.cer";
应该info.Arguments = "testCert_admin_check.cer";
我认为您需要提供凭据以在管理模式下调用进程。
UserName = "Administrator", Password =,