申请未显示。为什么?

时间:2009-09-16 11:21:00

标签: vb.net windows-server-2008

我的应用程序是用VB.NET构建的。这是一个EXE应用程序。 它已作为一个独立的应用程序在许多Windows主机上运行良好 - 没有开发环境。

现在我尝试在Windows 2008服务器(作为本机应用程序)上运行它,但是没有显示表单 - 没有显示任何内容。当我调试时,我看到它正在运行所有“form_load”子例程直到结束,但是没有显示任何内容。我发现没有错误。 可能是什么原因?我该怎么检查?

我必须说它在许多其他Windows机器上运行良好,但在Windows 2008服务器机器上运行不正常(我们尝试了另一台机器)。

这不是数据库应用程序。仅限GUI。

提前致谢!

4 个答案:

答案 0 :(得分:2)

你说“没有显示任何内容。”但该应用程序是否显示在Windows任务栏上?

表单可能会显示 - 但该位置是屏幕外的。例如,左上角可能是(1300,1100)或(-1300,-1100)。

尝试再次运行它,但随后(当表单OUGHT可见时)尝试按ALT + SPACE。如果您的窗口确实存在,您将看到系统菜单(恢复,移动,大小等)。在这种情况下,选择尺寸 - 你应该能够使用鼠标和/或键盘箭头键,使窗口可见。

另一方面,如果应用程序应该显示在Windows任务栏中,但它没有显示,那么在使应用程序退出的form_Load中(或之后)正在发生某些事情。要仔细检查是否发生这种情况,请尝试添加以下代码:

    Private Sub Form1_FormClosed(ByVal sender As Object, _
        ByVal e As System.Windows.Forms.FormClosedEventArgs) Handles Me.FormClosed
    MsgBox("Form is closing")
End Sub

答案 1 :(得分:1)

确保它在发布时没有崩溃。

答案 2 :(得分:0)

我想在服务器上安装了相应的.net Framework?

答案 3 :(得分:0)

如果由于应用程序正在终止而未显示任何内容,则可能是由于未处理的异常。您可以通过进入任务管理器并查看应用程序是否正在运行来判断应用程序是否已终止。如果已终止,请检查Windows应用程序事件日志。如果你很幸运,你会看到一个错误条目,甚至可能是该日志中的堆栈跟踪。