ProcessStartInfo动词运行不起作用

时间:2017-01-20 16:02:48

标签: c# wpf

以下代码有什么问题?

        ProcessStartInfo startInfo = default(ProcessStartInfo);

        startInfo = new ProcessStartInfo(SetupProgramPath)
        {
            UseShellExecute = true,
            Verb = "runas",
            WindowStyle = ProcessWindowStyle.Normal,
            CreateNoWindow = false
        };

        Process.Start(startInfo); 

预计会提示输入凭据但不显示任何内容。系统启用了UAC,不应更改。 我很感谢你在这方面的帮助。提前谢谢。

2 个答案:

答案 0 :(得分:0)

如果您想要求用户输入其他用户的凭据,请使用“runasuser”:

ProcessStartInfo startInfo = new ProcessStartInfo(SetupProgramPath)
{
    UseShellExecute = true,
    Verb = "runasuser",
    WindowStyle = ProcessWindowStyle.Normal,
    CreateNoWindow = false
};

Process.Start(startInfo); 

答案 1 :(得分:0)

我使用以下代码完成了这项工作

ProcessStartInfo startInfo = default(ProcessStartInfo);

startInfo = new ProcessStartInfo(SetupProgramPath)
{
    UseShellExecute = true,
    Verb = "runas",
    WindowStyle = ProcessWindowStyle.Normal,
    FileName = "msiexec",
    Arguments = "/i \"" + SetupProgramPath + "\"",
    CreateNoWindow = false
};

Process.Start(startInfo);