[求助]CreateProcess挂住了,请各位大牛帮看看

ScanerKi 2012-07-05 09:35:05
ntoskrnl.exe+0x584d
ntoskrnl.exe+0x96ff6
ntoskrnl.exe+0x699f
ntdll.dll!KiFastSystemCallRet
ntdll.dll!RtlEnterCriticalSection+0x46
ntdll.dll!LdrGetDllHandleEx+0x235
ntdll.dll!LdrGetDllHandle+0x18
!LoadLibraryExW+0x22e
!GetFileVersionInfoSizeW+0x31
!SdbTagIDToTagRef+0x609
!SdbGetStringTagPtr+0x4c5
!SdbGetStringTagPtr+0x3e3
!SdbGetStringTagPtr+0x38a
!SdbGetStringTagPtr+0x2d5
!SdbGetStringTagPtr+0x1e4
!SdbGetNextChild+0x120
!ApphelpCheckRunApp+0x217
!ApphelpCheckRunApp+0x29
!GetNlsSectionName+0x1504
!GetNlsSectionName+0x1093
!CreateProcessInternalA+0xf1
!CreateProcessA+0x2c
!utils::ShellMgrImpl::doShell+0x191
!utils::system+0xb1
!Ts::ServiceLoggerImpl::write_log+0x8c7
!Ts::ServiceLoggerImpl::svc+0x1c0
!ACE_Task_Base::svc_run+0x2e
!ACE_Thread_Adapter::invoke+0x73
!endthreadex+0xc7
...全文
147 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
赵4老师 2012-07-06
  • 打赏
  • 举报
回复
进入临界区挂住的原因十有八九是该临界区之前在另一个地方已经进入。
用handle.exe查看该临界区被谁占用。
http://technet.microsoft.com/zh-CN/sysinternals
ScanerKi 2012-07-05
  • 打赏
  • 举报
回复
GetNlsSectionName那些调用不是我来调的,是windows自己调的其实可能挂在 RtlEnterCriticalSection这个里面了,看函数是在进入临界区时候挂住了
ScanerKi 2012-07-05
  • 打赏
  • 举报
回复
其实是在doShell里面的如下语句挂住了

if(!CreateProcess(applicationName.c_str(), NULL, NULL, NULL, TRUE, CREATE_NEW_CONSOLE, pEnv, NULL,&startupinfo,&pinfo))
{
return false;
}

CreateProcess不返回了,查看线程的调用堆栈时:
ntoskrnl.exe+0x584d
ntoskrnl.exe+0x96ff6
ntoskrnl.exe+0x699f
ntdll.dll!KiFastSystemCallRet
ntdll.dll!RtlEnterCriticalSection+0x46
ntdll.dll!LdrGetDllHandleEx+0x235
ntdll.dll!LdrGetDllHandle+0x18
!LoadLibraryExW+0x22e
!GetFileVersionInfoSizeW+0x31
!SdbTagIDToTagRef+0x609
!SdbGetStringTagPtr+0x4c5
!SdbGetStringTagPtr+0x3e3
!SdbGetStringTagPtr+0x38a
!SdbGetStringTagPtr+0x2d5
!SdbGetStringTagPtr+0x1e4
!SdbGetNextChild+0x120
!ApphelpCheckRunApp+0x217
!ApphelpCheckRunApp+0x29
!GetNlsSectionName+0x1504
!GetNlsSectionName+0x1093
!CreateProcessInternalA+0xf1
!CreateProcessA+0x2c



赵4老师 2012-07-05
  • 打赏
  • 举报
回复
请判断每个函数调用的返回值。
ScanerKi 2012-07-05
  • 打赏
  • 举报
回复
有没有人知道啊

3,882

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 其它技术问题
社区管理员
  • 其它技术问题社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧