我们刚刚为 Jenkins CI 系统设置了新版 Windows 2008 R2 服务器。我们的问题似乎与文件权限有关,具体取决于进程是服务还是控制台进程。
当以 UserX 身份登录时,我们可以成功执行(实际命令)的目录列表dir /b c:\Windows\System32\q*.exe
,并返回 6 个文件。但是,通过服务运行相同的命令,我们只得到 5 个。相同的用户帐户。相同的计算机。
更大的问题是,由于该文件未出现在目录列表中,因此无法执行。
出现的文件和未出现的文件之间的权限似乎没有任何区别。
有任何想法吗?
答案1
我们已经解决了这个问题,因此我向其他人发布了解决方案。
问题在于 Jenkins 从属进程(服务)以 32 位进程运行。Windows 很有帮助,它自动将对 c:\Windows\System32 的访问重定向到 c:\Windows\SysWOW64。
我们正在寻找的可执行文件无论如何都应该在 SysWOW64 中,因此我们将它们复制过去,问题就解决了。