问题
Also posted at: http://forum.sysinternals.com/problem-launching-procdump-from-a-64bit-service_topic27425.html
We can potentially run multiple services with the same executable at a customer site. We have added a setting to our program "Enable procdump" and instruct customers to download procdump and put it in our bin directory.
If the setting is on, we launch procdump when our service starts up (specifying the process id).
The problem is: When running as "Local Service" or "Local System" procdump doesn't work for our 64-bit server. It works fine when running as a domain user with admin privileges. It also works fine if we launch it manually from a command prompt. It looks like when we run it manually I see two procdump processes created in the task manager: procdump *32 and procdump64
When our 64-bit service is running as "Local Service" or "Local System" and launches procdump, only procdump*32 shows up. I'm assuming the way it is supposed to launch procdump64 is failing. It also fails to create dumps, and fails to terminate if I taskkill the service (normally it exits).
Any ideas as to why this is, or if there is anything I can do about it? Is there some permission that is required for an account running procdump?
来源:https://stackoverflow.com/questions/9035480/launching-procdump-from-a-64-bit-service-doesnt-work-when-running-as-local-serv