我正在使用的应用程序无法在Visual Studio 2005的调试器中启动。
这就是我的所作所为:
该应用程序是一个非托管C ++项目,它使用大量DLL文件作为插件。我正在使用“多线程调试”运行时,并且我确保所有依赖项都是针对相同的运行时编译的。
在这样做时,这个问题突然出现了。我试图扭转我的变化,但它没有帮助。重新启动计算机也无济于事。
我已经随机运行了一两次应用程序。如果我然后结束应用程序并再次启动它它没有启动。所以我认为这不是因为我的配置。
有什么想法吗?
还有一点需要注意:如果我从Visual Studio外部启动它,应用程序将启动并运行。
答案 0 :(得分:2)
在您的程序使用的隐式链接DLL之一中听起来像一个行为不端的DllMain()。您可能会从“输出”窗口中获得提示,它会在加载时列出DLL的名称。如果它是wininet.dll,那么你已经陷入了符号服务器的死锁陷阱。
答案 1 :(得分:1)
好的,我已经解决了我的问题,但我不知道怎么做。
我试过的一件事是删除所有构建文件和exe和dll文件,然后重新编译所有内容。但这没有帮助。
然后我随机尝试了一件事:插件在同一个解决方案中。所以我删除了它们并尝试再次运行。 这次它有用了!所以我添加了所有的插件项目,仍然有用!
所以,我想我永远不会知道发生了什么。但是删除并向解决方案添加项目也可以解决别人的问题......:)