C# 从WCF服务执行tzutil.exe

C# 从WCF服务执行tzutil.exe,c#,wcf,process,uac,C#,Wcf,Process,Uac,我有一些其他进程正在执行.exe文件,工作正常。有些需要放在批处理文件中 现在,我面临tzutil.exe的问题,它总是在拒绝访问权限时失败 命令如下: tzutil.exe /s "timezone name" 我已经做了以下许多工作: WCF在IIS 7.5上运行,应用程序池设置为本地系统 我已尝试向进程提供用户凭据,但失败 执行前放入批处理文件,仍然失败。如果我手动运行批处理文件,它可以正常工作 我还尝试在注册表项\HKEY\U LOCAL\U MACHINE\SYSTEM\Curren

我有一些其他进程正在执行.exe文件,工作正常。有些需要放在批处理文件中

现在,我面临tzutil.exe的问题,它总是在拒绝访问权限时失败

命令如下:

tzutil.exe /s "timezone name"
我已经做了以下许多工作:

  • WCF在IIS 7.5上运行,应用程序池设置为本地系统
  • 我已尝试向进程提供用户凭据,但失败
  • 执行前放入批处理文件,仍然失败。如果我手动运行批处理文件,它可以正常工作
  • 我还尝试在注册表项\HKEY\U LOCAL\U MACHINE\SYSTEM\CurrentControlSet\services\gpsvc中设置管理员完全控制权,并在RequiredPrivileges项中添加SeTimeZonePrivilege。重新启动计算机,然后重试。保持失败
  • 我在本地安全策略中为“更改时区”添加了“所有人”。还是失败了。还尝试在列表中添加所有可用的用户和组。尝试添加IIS应用程序池,但显示“未能保存到本地策略数据库”
  • 我还尝试使用psexec.exe。我必须访问WCF服务=>'psexec.exe tzutil.exe/s“timezone name”“,而不是远程访问。还是失败了。如果手动运行,它可以正常工作

  • 我们非常感谢您提出的任何其他建议和解决方案。谢谢。

    您可以使用Process Monitor()解决此类问题,希望您能看到哪些操作在拒绝访问的情况下失败。您可能需要将其提升(“以管理员身份运行”)。