在另一台计算机上运行 C# 程序时出现 System.IO.FileLoadException

2024-04-08

我目前正在开发一个 C# WPF 项目,该项目使用 MySQL.Data 和 System.Data.Sqlite dll 以及其他几个。

该项目是一个 .Net 4 项目,在我的开发机器上运行没有问题。我创建了一个 MSI 安装程序包,当我添加可执行文件时,Visual Studio 会计算出依赖关系,并使用 EXE 添加所需的 DLL。

当我在开发计算机上运行安装程序时,一切正常。但是,当我将安装程序复制到安装了 .Net Framework 3.5 和 .Net Framework 4 的空白虚拟机时,安装程​​序表示一切已成功安装,当我查看程序文件文件夹时,所有 DLL 也都在那里,但是当我尝试运行该软件,但该软件未加载,并且事件查看器中显示 .Net 运行时错误。

错误如下

应用程序:MySQLBackup.exe 框架版本:v4.0.30319 描述:由于未处理的异常,进程被终止。 异常信息:System.IO.FileLoadException 堆栈:位于 MySQLBackup.App.Application_Startup(System.Object, System.Windows.StartupEventArgs)位于 System.Windows.Application.OnStartup(System.Windows.StartupEventArgs) 在 System.Windows.Application.<.ctor>b__1(System.Object) 在 System.Windows.Threading.ExceptionWrapper.InternalRealCall(System.Delegate, System.Object,Int32)位于 MS.Internal.Threading.ExceptionFilterHelper.TryCatchWhen(System.Object, System.Delegate、System.Object、Int32、System.Delegate)位于 System.Windows.Threading.DispatcherOperation.InvokeImpl() 在 System.Windows.Threading.DispatcherOperation.InvokeInSecurityContext(System.Object) 在 System.Threading.ExecutionContext.runTryCode(System.Object) 处 System.Runtime.CompilerServices.RuntimeHelpers.ExecuteCodeWithGuaranteedCleanup(TryCode, CleanupCode、System.Object)位于 System.Threading.ExecutionContext.RunInternal(System.Threading.ExecutionContext, System.Threading.ContextCallback、System.Object)位于 System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext, System.Threading.ContextCallback、System.Object、布尔值)位于 System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext, System.Threading.ContextCallback、System.Object)位于 System.Windows.Threading.DispatcherOperation.Invoke() 在 System.Windows.Threading.Dispatcher.ProcessQueue() 在 System.Windows.Threading.Dispatcher.WndProcHook(IntPtr,Int32,IntPtr, IntPtr,布尔 ByRef)在 MS.Win32.HwndWrapper.WndProc(IntPtr,Int32, IntPtr、IntPtr、布尔 ByRef)位于 MS.Win32.HwndSubclass.DispatcherCallbackOperation(System.Object)位于 System.Windows.Threading.ExceptionWrapper.InternalRealCall(System.Delegate, System.Object,Int32)位于 MS.Internal.Threading.ExceptionFilterHelper.TryCatchWhen(System.Object, System.Delegate、System.Object、Int32、System.Delegate)位于 System.Windows.Threading.Dispatcher.InvokeImpl(System.Windows.Threading.DispatcherPriority, System.TimeSpan、System.Delegate、System.Object、Int32)位于 MS.Win32.HwndSubclass.SubclassWndProc(IntPtr, Int32, IntPtr, IntPtr) 在 MS.Win32.UnsafeNativeMethods.DispatchMessage(System.Windows.Interop.MSG 通过参考)在 System.Windows.Threading.Dispatcher.PushFrameImpl(System.Windows.Threading.DispatcherFrame) 在 System.Windows.Threading.Dispatcher.PushFrame(System.Windows.Threading.DispatcherFrame) 在 System.Windows.Threading.Dispatcher.Run() 处 System.Windows.Application.RunDispatcher(System.Object)位于 System.Windows.Application.RunInternal(System.Windows.Window)位于 System.Windows.Application.Run(System.Windows.Window)位于 MySQLBackup.App.Main() 处的 System.Windows.Application.Run()

错误消息并不能真正帮助我找出问题所在,因此在应用程序启动事件中我添加了 try catch 语句,但从未捕获异常。我还添加了 try catch 周围InitialiseComponent()方法在应该加载的第一个对话窗口上执行,但再次捕获从未被捕获,所以我看不到导致错误的原因。

我怎样才能找出这个问题是什么并解决它?


How can I figure out what this problem is and fix it.

使用执行远程调试Visual Studio 远程调试器 http://www.microsoft.com/download/en/details.aspx?id=475.

本教程 http://msdn.microsoft.com/en-us/library/y7f5zaaa.aspx给出了如何使用它的想法。

一旦熟悉了 VS 远程调试,您将始终使用这个强大的工具在潜在的客户端环境上进行测试。

至于您的特定问题,您在 Application.Startup 事件处理程序中有一些代码尝试加载某些文件并失败。如果您自己无法找到问题根源,请在您的 App.xaml 中发布代码,以便我们进行分析。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在另一台计算机上运行 C# 程序时出现 System.IO.FileLoadException 的相关文章

随机推荐

  • 包装函数的函数名称? [复制]

    这个问题在这里已经有答案了 如何获取原始函数的名称 def wrap f def wrapped f args kwargs do something return wrapped f wrap def A params do someth
  • SQL - 如何只获取小数点后的数字?

    如何只获取小数点后的数字 例子 2 938 938 尝试这个 SELECT num 1
  • SQL 查询将一列数字变成字符串

    是否可以转换大字符串中的双精度列 就像是 att1 123 2 3 6 6 77 23 43 4 78 7 6 123 2 9 6 1 77 3 43 24 78 76 6 411 5 346 5 975 75 162 788 4 5 16
  • 如何为 GKE 服务创建 Google CDN

    我已经在 GKE kubernetes 上部署了一个 WordPress 网站 我可以像 mysite test com 这样从互联网访问我的网站 并且工作起来就像一个魅力 现在我想使用Google CDN来加速访问 我尝试过使用 Ingr
  • 如何更改 Visual Code Studio 提交作者

    我不知道为什么 但我的 Visual Studio Code 显示错误的提交作者姓名 我正在尝试更改提交的作者 我怎样才能做到这一点 我已经有很多东西了 但没有运气 这是我尝试过的 由于我有三个提交 所以我尝试了git rebase i H
  • 如何排除“git diff-index”中的文件

    我正在使用 git 预提交挂钩来检查提交 预提交脚本基本上做了一件事 exec git diff index check cached HEAD 它还做了一些其他事情 但它们与本次讨论无关 问题是 我的存储库中有各种各样的文件 但并非所有文
  • 通过单击按钮旋转/翻转两种布局

    我有两个布局 xml 文件 我想从一个页面翻转到另一个页面 这两个 xml 文件是 main xml 和 register xml 如果我单击 main xml 中的登录按钮 页面应该翻转并显示 register xml并且在 regist
  • 在 Anaconda 中安装 Kivy

    我正在尝试在 Windows 7 的 Anaconda 3 4 1 1 中安装 Kivy 但我找不到合适的用户指南来指导我如何安装 但到目前为止 我能够在链接上找到在 OS X 上安装它的说明https github com kivy ki
  • matplotlib 中的曲面图

    我有一个 3 元组列表 表示 3D 空间中的一组点 我想绘制一个覆盖所有这些点的曲面 The plot surface函数在mplot3d包要求参数 X Y 和 Z 为二维数组 是plot surface绘制曲面的正确函数以及如何将数据转换
  • 使用 Ruby Date 类处理天文数据

    大约太阳正午 lw 88 743 my longitude jdate Date ordinal to jd Time now year Time now yday n jdate 2451545 0 0009 lw 360 round l
  • 如何在x86汇编编程中表示诸如FFFFFFBB之类的十六进制值?

    我正在学习 x86 内联汇编编程 我想写mov ecx FFFFFFBB 但是编译器无法识别它 像这样的十六进制数字应该如何在内联汇编代码中编写 这取决于您的汇编器的风格 美国电话电报公司 movl 0xFFFFFFBB ecx Intel
  • PyCharm:FooTestCase 不是测试,但 FooTest 是

    如果我打电话给我的测试班FooTestCase我没有看到绿色播放按钮来运行测试 如果我删除 Case 并调用它FooTest出现绿色播放按钮 为什么会发生这种情况 我想要有播放按钮来运行 FooTestCase 的测试 None
  • ANDROID SQLITE 检查表是否有数据

    我想检查一下我的表是否有记录 这是我尝试过的 if cursor null cursor moveToFirst if cursor getInt 0 0 Toast makeText getBaseContext No records y
  • 为什么编译器会生成这个程序集?

    在逐步执行一些 Qt 代码时 我遇到了以下情况 功能QMainWindowLayout invalidate 有以下实现 void QMainWindowLayout invalidate QLayout invalidate minSiz
  • Kendo UI 数据源 - 过滤相关数据

    我在过滤相关数据 多对多 的剑道数据源时遇到问题 我正在使用 ASP NET WebAPI2 和 DataSourceRequest 来捕获服务器上的请求 然后使用 IQueryable 上的 ToDataSourceResult 扩展方法
  • Laravel 4 调用未定义的方法 Illuminate\Database\Eloquent\Collection::links()

    我尝试实现书中的代码 学习 Laravel 4 应用程序开发 http www packtpub com learning laravel 4 application development book 一个简单的使用 CRUD 应用程序如下
  • boost::process::child 关闭输入流后不会退出

    在下面的示例中 我尝试将一些数据写入子进程 该子进程处理数据并将其写入文件 关闭流后 父进程无限期地等待子进程完成 我不知道如何表明我已完成写入数据 并希望子进程停止读取并完成它正在做的任何事情 根据文档调用终止会发送一个SIGKILL h
  • 如果没有 iPad,如何在 iPad 上测试我的网站?

    我收到评论说我的一位网站 tumblr 主题 http www tumblr com theme 11037在 iPad 上崩溃 我没有 iPad 所以我想知道您将如何在 iPad iPhone 或任何其他智能手机上测试您的网站 如果您使用
  • JQuery:帮助使用 .each() 和 .append() 将图片添加到 HTML

    需要修复的简单错误 我不知道出了什么问题 我需要将同一张图片附加到 HTML 中的多个 五个 div 由于某种原因 我的代码将同一张图片附加到每个 div 五次 更清楚地说 五个 div 中的每一个都需要一张图片 现在 这五个人每人都有五张
  • 在另一台计算机上运行 C# 程序时出现 System.IO.FileLoadException

    我目前正在开发一个 C WPF 项目 该项目使用 MySQL Data 和 System Data Sqlite dll 以及其他几个 该项目是一个 Net 4 项目 在我的开发机器上运行没有问题 我创建了一个 MSI 安装程序包 当我添加