平台:Windows 7 Embedded Standard
我有一个C#.NET 3.5程序。它在启动时调用CreateJobObject
和SetInformationJobObject
(通过P / Invoke)。
然后,它调用Process.Start
开始一个过程。
然后再次使用P / Invoke在子级上调用AssignProcessToJobObject
。
这行得通。
但是,当我使用Process.Start
通过第二个C#.NET程序启动第一个程序时,第一个程序在AssignProcessToJobObject
中失败,出现Win32错误5,访问被拒绝。
现有问题CreateProcessWithLogonW and AssignProcessToJobObject表示在第二种情况下第一个进程可能没有JOB_OBJECT_ASSIGN_PROCESS
访问权限。如何检查第一个程序是否具有此访问权限?
如果这样做,是否还有其他可能出错的地方?