【问题标题】:The program '[12460] TestProject.exe' has exited with code -1 (0xffffffff)程序“[12460] TestProject.exe”已退出,代码为 -1 (0xffffffff)
【发布时间】:2021-04-16 12:06:54
【问题描述】:

我正在编写一个 c# windows 窗体项目,当我停止进程时,此消息会显示在输出终端中:

The program '[12460] TestProject.exe' has exited with code -1 (0xffffffff).

虽然应用程序运行正常,但 -1 退出代码似乎并不熟悉。请谁能解释一下-1退出代码是什么意思?无法绕开它。

【问题讨论】:

  • 您是通过单击窗口右上角的X 来停止它,还是通过 Visual Studio 停止它?
  • @MindSwipe,通过单击方形图标将其从 Visual Studio 中停止。
  • 通过单击“停止调试”停止运行将强制进程停止并退出,退出代码为 -1
  • 所以这不是问题吗?这不是停止调试的唯一方法吗?请多多指教
  • 这根本不是问题。您是对应用程序进行编程的人,因此,如果您没有专门使用不同的退出代码(例如使用Environment.Exit(some number)),则绝不应该(在生产中/未调试时)以非零退出代码退出.除了在 Visual Studio 中单击它,您还可以简单地按 WinForm 上的X。另请注意,从 Visual Studio 强制停止它会跳过某些钩子,例如 application exit

标签: c# .net windows forms


【解决方案1】:

这是预期的行为。如果单击 Visual Studio 中的“停止”按钮,则会立即终止应用程序并将返回代码报告为 -1 (0xffffffff)。如果您想正常终止您的应用程序,请单击窗口右上角的“X”(如果是窗口应用程序)。

您还可以使用“Debug->Detach”菜单选项将调试器从应用程序中分离出来,而不会杀死它。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-06-05
    • 2022-06-29
    • 2012-07-20
    • 2018-08-10
    • 2023-02-14
    • 1970-01-01
    相关资源
    最近更新 更多