C# 本地服务未在不同的用户帐户下调用.exe

C# 本地服务未在不同的用户帐户下调用.exe,c#,C#,我有一个作为“系统”安装的服务,它调用一个进程,但我需要以用户身份运行它 try { System.Security.SecureString ssPwd = new System.Security.SecureString(); System.Diagnostics.ProcessStartInfo proc = new System.Diagnostics.ProcessStartInfo(); proc.UseShellExecute = false; pr

我有一个作为“系统”安装的服务,它调用一个进程,但我需要以用户身份运行它

try
{
    System.Security.SecureString ssPwd = new System.Security.SecureString();
    System.Diagnostics.ProcessStartInfo proc = new System.Diagnostics.ProcessStartInfo();
    proc.UseShellExecute = false;
    proc.Verb = "runas";
    proc.UserName = "Stevie";
    string p = "Stevie";
    for (int x = 0; x < p.Length; x++)
    {
        ssPwd.AppendChar(p[x]);
    }

    proc.Password = ssPwd;
    proc.FileName = @"C:\DailyTask\GenFile.exe";
    proc.Arguments = "-csv";
    System.Diagnostics.Process.Start(proc);
}
catch(Exception errrr)
{
    m.log(errrr.ToString());   
}
我拥有该目录及其内容的完整权限。 我已经把它分享给了“每个人”,并给了它读/写权限


不知道我还缺少什么。我可以手动运行该进程,不会出现任何错误。

您的服务是否也可以访问
C:\DailyTask\GenFile.exe
?似乎你的exe一开始就没有被调用。是的,它甚至没有启动,我已经启动了procmon,并设置了过滤器,如果它启动但没有运气,就可以捕获它。当你说我的服务是否有权访问该文件时,你是指在该特定.exe上设置的权限吗?如果是这样,我将其设置为“所有人”的所有权限,或者您是指其他权限吗?如果我将服务作为“本地服务”而不是本地系统安装,则有效您是否明确需要本地系统权限?您的服务是否也有权访问
C:\DailyTask\GenFile.exe
?似乎你的exe一开始就没有被调用。是的,它甚至没有启动,我已经启动了procmon,并设置了过滤器,如果它启动但没有运气,就可以捕获它。当你说我的服务是否有权访问该文件时,你是指在该特定.exe上设置的权限吗?如果是这样,我将其设置为“所有人”的所有权限,或者您是指其他权限?如果我将服务作为“本地服务”而不是本地系统安装,则可以正常工作您是否明确需要本地系统权限?
Sunday, January 24, 2016 --- System.ComponentModel.Win32Exception (0x80004005):Access is denied
at System.Diagnostics.Process.StartWithCreateProcess(ProcessStartInfo startInfo)
at System.Diagnostics.Process.Start()
at System.Diagnostics.Process.Start(ProcessStartInfo startInfo)
at DirectoryWatcher.MyPOSystemWatcher.Open_f(String filePath)