【发布时间】:2013-04-19 17:36:01
【问题描述】:
我在 VB 中编写了一个需要一些外部 DLL 的 win forms 应用程序,它可以在多台机器上完美地安装和运行,但它不能在一台笔记本电脑上运行!我什至让 Filestreams 将异常写入文本文件。虽然它将预期的标题文本写入其他计算机上的调试文件,但它不会向上述笔记本电脑上的调试文件写入任何内容。我的猜测是它甚至没有达到 Form1_Load() 方法。
这是程序的结构:
Import namespaces from external programs
Public Class MyApp
''Varibale declarations:
Structures and classes based on DLLs
Other declarations based on .Net Objects
Stream writer declaration and initialization for the debug file
Private Sub Form1_Load(...)
Try
Write Start and time to the debug file
execute commands
catch
write debug info
end Try
End Sub
Other events and subs
End Class
有没有办法查看调试文件的初始化和 Form1_Load() 的执行之间发生了什么??
正如我所说,它在所有使用它的机器上都能完美运行,除了一台! 在那台机器上我需要检查什么?
【问题讨论】:
-
当你在你的开发机器上调试应用程序时(它在那里工作对吗?)你可以按照 Form_Load 的路径检查是否在 Form_Load 之前初始化了某些东西。使用分步功能(通常是 F11,但在您的环境中可能会有所不同)
-
确保笔记本电脑安装了所需的 .NET 框架。
-
感谢 Jack,它确实安装了所需的 .Net 框架,实际上它已包含在附加组件中。
-
@Steve,非常感谢你,那个 F11 提示很棒,它将来会派上用场,但在我到达 Form1_Load() 之前,只加载了一些无法访问的函数。跨度>
-
我想我已经找到问题所在了!尽管我已将 .dll 添加到引用列表中,并且它们包含在二进制文件夹和安装包文件中,但它们之间的链接无法正常工作!我删除了与包相关的 gui 内容,应用程序现在正在运行!它只给了我一个 InvalidOperationException 似乎与This problem discussed here
标签: vb.net winforms deployment installation