未安装Visual Studio的应用程序崩溃

时间:2011-08-30 08:14:27

标签: .net visual-studio visual-studio-2010 crash

代码很大,要发送到这里,我不知道哪些部分很重要。我试过我拥有的每台电脑,但它不适用于任何一款电脑。 VS2010在没有任何警告或错误的情况下编译代码并运行应用程序,如果我只是从操作系统启动应用程序也可以正常工作。当我把它放在不同的PC上时不起作用(我到处都有Framework 4.0,其他我的应用程序工作正常)。

在我的笔记本电脑上(win xp),它说“程序遇到了问题,需要关闭......”。标准窗口“发送/不发送”错误说没有具体的问题。

在我的电脑上(win xp)它说的与笔记本电脑相同,而不是我在那里安装了Visual Studio,它开始工作正常。当我卸载VS10时,它再次按下按钮,例如“未处理的异常即时调试器未找到...”,再次没有任何具体问题。

我的朋友带着他的笔记本电脑(赢7)并且没有消息显示但也没有应用程序。它没有做任何消息,没有应用程序,甚至没有进程启动。当我点击图标时,等待光标出现了2秒,这就是全部。

每次相同的事情都没有形式甚至显示它立即崩溃。应用程序实际工作的只有PC(win 7),我创建它,当然安装了Visual Studio 2010。我相信其他电脑会错过一些与VS2010一起安装的文件或.dll和其他垃圾。任何想法要找什么?我无法在任何地方安装VS,并且喜欢说“你需要adobe首映来观看视频”。

编辑: Windows中的事件:

Application: Floorball.exe
Framework Version: v4.0.30319
Description: The process was terminated due to an unhandled exception.
Exception Info: System.IO.FileNotFoundException
Stack:
   at Floorball.Interface.InitializeComponent()
   at Floorball.Interface..ctor()
   at Floorball.Program.Main()

[溶液] 好吧没有完全解决,但我能够在InitializeCoponent()中找到导致崩溃的GUI组件。它愚蠢的LineShape !!我真的不明白为什么到处都不能正常工作!因此,如果每个人都有类似的问题尝试这个解决方案!

6 个答案:

答案 0 :(得分:4)

听起来你正试图在没有调试dll的机器上运行调试版本。尝试编译发布版本,看看是否有帮助。

附录:

它可能是另一件事(但实际上只是猜测而没有具体细节)是64/32位的差异。如果您尝试运行的程序是P / Invoke,这可能是个问题。如果您的项目设置为针对任何CPU,那么它将在64位操作系统上以64位程序运行,在32位操作系统上以32位运行。尝试专门针对x86,看看是否会发生任何变化。

答案 1 :(得分:2)

我想到的前三件事:

  • 缺少某些.NET库。如果它已经为.NET 4编译,它可能需要完整的框架,它只能找到较小的“客户端”版本。检查可再发行。
  • 缺少C ++库:如果它是C ++程序,除了.NET库之外,还需要安装C ++ redist。
  • 调试/发布:如果在调试配置中编译,程序将寻找调试.NET(和C ++)库,这些库不是由可再发行组件包安装的。使用Release配置进行编译可以解决此问题。

答案 2 :(得分:0)

尝试针对.net4客户端配置文件进行编译

答案 3 :(得分:0)

除了建议确保您进行发布版本的答案之外,请检查您的项目设置:在调试选项卡上,“调试器”部分禁用选项“启用Visual Studio托管在您的DebugRelease配置中处理“

答案 4 :(得分:0)

整个上午一直在打这个,现在已经解决了,为什么会这样。发布希望它有助于其他人

我安装了Krypton.Toolkit,它自动将工具添加到Visual Studio工具箱中。然后我将这些工具添加到设计器中,它自动将dll添加到projrect引用中,但是工具包被标记为CopyLocal = false

我使用release build文件夹中的所有dll构建了一个安装程序(当然上面的dll不在那里)。

设置copylocal = true,然后重建安装程序,一切正常。

答案 5 :(得分:0)

过去两天我只需处理此错误。事实证明,对于目标框架为.NET 4.0或.NET 4.0 CP的项目,在我的项目案例Visual Basic DLL中,.NET 4.5中不存在一些DLL。

将文件打包到安装程序中的InstallShield项目也无法检测到此依赖项。

我的项目是一个升级到Visual Basic .NET(VB.net)的Visual Basic(VB6)项目,它以某种方式需要名为Microsoft.VisualBasic.PowerPacks.Vs.dll的DLL位于

C:\Program Files\Reference Assemblies\Microsoft\VBPowerPacks\v10.0

我只是在意识到安装了Visual Studio后项目运行正常但在崩溃日志中没有“System.IOException.FileNotFound”之外没有特定警告的情况下才发现这一点。在Visual Studio中浏览我的项目的对象资源管理器并通过将每个DLL添加到InstallShield LE项目逐个尝试每个DLL,构建并将其复制到安装有发布软件的VM允许我(最终)到达此解决方案。

希望这有助于其他人。