我来找你是因为我很绝望。我使用最新的 MonoDevelop 在 C# 中开发了一个 GTK# 应用程序。它是为 .NET 框架 4.0 / x86 构建的,它使用的唯一外部库是官方的 Mysql .Net 连接器。它旨在在 Windows XP 下运行。
这是我用这个 IDE 制作的第一个应用程序。我对结果和开发时间非常满意,但部署确实令人头疼。
它在开发机器上完美运行。调试很干净。一切都好。
然后,由于找不到有关部署的任何信息,我安装了一个干净的 XP 来尝试它,看看我应该在客户端机器上安装什么。
我已经安装了 SP3、.NET 4.0 并使用构建日志中提到的所有 DLL 复制了发布包(这使它在开发机器中的 MonoDevelop 之外工作)。但是我得到一个“应用程序遇到问题需要关闭”的错误,在 kernel32.dll 中,偏移 0012aeb 无一例外。
我尝试在 4.0 之前安装 .NET 3.5,更新了 IE(以防万一……),将更多 GTK# 和 Monodevelop DLL 复制到 exe 的文件夹中,安装了 Mysql .NET 连接器,安装了 Mono 2.8……但什么都没有。仍然得到那个无法解释的错误。
Google 和 StackOverflow 搜索对我没有帮助。在过去的 12 个小时或更长时间里,我在没有离开这台机器的情况下研究并尝试了很多东西。
你有什么建议吗?可能是什么原因造成的?有什么方法可以调试exe(不安装VS ...)?有谁知道这种可执行文件的所有依赖项是什么?