我试图让运行在Windows 2008 R2上的服务能够执行dcpromo,以便加入和删除AD。在Server 2003中,我能够简单地在C#中使用C#(),并提供dcpromo的路径和用户提供的应答文件的路径。
但是,在Server 2008中,这将返回FileNotFoundException。我已经验证了dcpromo的路径,甚至尝试在System32文件夹中运行其他可执行文件,比如ipconfig和whoami,它们执行得很好。
该服务以本地系统帐户的形式运行,我找到的唯一方法是将命令保存到批处理文件中,并模拟管理员来执行批处理文件。但这也有它自己的问题,比如需要管理员的密码。
根据dcpromo.exe上的权限,系统帐户具有读取/执行权限,我尝试授予完全权限并将所有者更改为SYSTEM,但这些都没有帮助。如果用户作为常规应用程序运行相同的代码(即不是服务),则相同的代码可以工作。
知道如何在服务器2008 R2中的服务下运行时授予系统帐户权限来执行dcpromo吗?
发布于 2014-03-21 15:51:28
我一直有这个问题,并意识到DCPromo是一个64位的进程,您可能已经设置了Visual来创建x32应用程序。嗯,我改变了VS在64位编译,它的工作就像一个冠军!
卡洛斯
发布于 2013-02-07 19:12:23
是否可以将服务更改为以用户身份运行,而不是以系统帐户的身份运行?
https://serverfault.com/questions/476238
复制相似问题