我在资源管理器中右键单击shell扩展。在win 7 Ent SP1的某台机器上,从QueryContextMenu()调用的GetUserNameEx失败,GetLastError返回ERROR_DLL_INIT_FAILED。可以看出,GetUserName API也失败并出现相同的错误代码。该机器上有alockout.dll(MS accout lockout tool)。
流程监控器和Process Explorer不表示出现任何故障迹象。 Secur32.dll和alockout.dll在资源管理器中成功加载(从Process Explorer中可以看到)。当alockout.dll不存在时,工作正常,即GetUserNameEx返回用户名。
有人可以告诉我这里出了什么问题吗?如何解决这样的问题? (任何可用于进一步诊断此问题的工具)
注意: 在MS博客上已经看到类似的帖子没有回复: http://social.msdn.microsoft.com/Forums/en-US/983b5bec-dfe1-4f85-8123-86ec715ba484/when-getusernameex-fails-with-error-code-1114-errordllinitfailed