【问题标题】:Close VB.Net application from Startup event从 Startup 事件关闭 VB.Net 应用程序
【发布时间】:2016-02-06 20:00:49
【问题描述】:

我正在编写一个 vb.net 应用程序,如果出现某些错误,我会尝试从启动事件中优雅地关闭该应用程序。

有没有办法做到这一点?

目前我选中了“启用应用程序框架”复选框,所有代码都在“Private Sub MyApplication_Startup(sender As Object, e As ApplicationServices.StartupEventArgs) Handles Me.Startup”事件中

【问题讨论】:

  • 没有太多细节可以继续,但如果你不喜欢事情的进展,e.Cancel = True 将阻止应用程序/主窗体启动。在事件过程中编码时始终检查事件参数
  • 顺便说一句,这不是一个骗局。 OP 正试图在 MainForm 到 CloseApplication 对象到 .Exit 之前结束应用程序。
  • 我不确定这是否是最好的方法,因为我一直能够使用 Application.Exit(),但您可以尝试 Enviroment.Exit()。此处解释了差异:geekswithblogs.net/mtreadwell/archive/2004/06/06/6123.aspx

标签: vb.net startup


【解决方案1】:

在 Application.StartUp 事件期间关闭的正确方法是设置 e.Cancel = True,因为那时没有要关闭的 Form,也没有要使用 Application.Exit 的 Application 对象

【讨论】:

  • Cancel 不是StartupEventArgs 的成员
【解决方案2】:

我改变了策略,去掉了“启用应用程序框架”,把我的启动对象改为Sub Main()

一个简单的例子是:

Sub Main(byval args() as string) '在这里做我的检查 ... 如果 MyCheckingFails 则返回 应用程序.运行(MyMainForm) 结束子

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-08-17
    • 2018-12-13
    相关资源
    最近更新 更多