1

在 Windows 7 中,使用本地系统帐户的 Windows 服务使用 CreateProcessAsUser 启动的进程崩溃,但手动启动的同一进程运行良好。CreateProcessAsUser 功能位于单独的 COM 组件 [64 位 C++ dll] 中,Windows 服务 [dot net 4.6.1] 具有平台目标 [Any CPU]。该进程也没有向事件日志写入任何内容,这表明没有执行任何代码,并且它立即崩溃。此代码在 Windows 10 中完美运行。

我试图附加到这个过程,但它结束得太早了,无法做任何事情。我确实收到一条消息“未找到模块”,表明它没有找到库。但我无法弄清楚是哪一个。我给了它它需要的所有库,这可以从程序在从同一文件夹手动启动时运行正常的事实中看出。我也尝试在函数CreateProcessAsUser中指定启动文件夹,但没有区别,但我认为它默认在正确的文件夹中启动[它所在的位置]我在SO上找到了以下链接 为什么这个进程会尽快崩溃当它启动时? 但这也无济于事。ProcMon 不显示找不到模块的位置 [如果我删除已知模块,它会显示 PATH NOT FOUND]

The process exit status is -1066598274 and the stack trace is 0 ntoskrnl.exe RtlNtStatusToDosError + 0x1086 0xfffff8000712f206 C:\Windows\system32\ntoskrnl.exe 1 ntoskrnl.exe RtlCopySidAndAttributesArray + 0x1789 0xfffff8000714b0d9 C:\Windows\system32\ntoskrnl.exe 2 ntoskrnl .exe RtlNtStatusToDosError + 0x1538 0xfffff8000712f6b8 C:\Windows\system32\ntoskrnl.exe 3 ntoskrnl.exe KeSynchronizeExecution + 0x3a23 0xfffff80006e75e53 C:\Windows\system32\ntoskrnl.exe

事件查看器显示以下信息错误应用程序名称:BizBrainAgentPluginHost.exe,版本:1.0.0.0,时间戳:0x5b88084d 错误模块名称:KERNELBASE.dll,版本:6.1.7601.18015,时间戳:0x50b8479b 异常代码:0xc06d007e 故障偏移量: 0x0000000000009e5d 错误进程 id:0x484 错误应用程序启动时间:0x01d440746491e037 错误应用程序路径:C:\Program Files\Avinashi Ventures Pvt Ltd\myTallyApp Agent\BizBrainAgentPluginHost.exe 错误模块路径:C:\Windows\system32\KERNELBASE.dll 报告 ID: a2f39c97-ac67-11e8-94f1-0023ae9747d0

谢谢

4

0 回答 0