如何在throw异常中将我的文本显示为错误文本
本文关键字:文本 我的 显示 错误 throw 异常 | 更新日期: 2023-09-27 18:26:14
我写了一个窗口服务项目,当出现一些错误时,我想在OnStart()函数中显示一条错误消息,(带throw)则服务没有启动。
protected override void OnStart(string[] args)
{
// do some code ...
// when some error occur:
throw new System.Exception("my error text!!!");
}
还好,服务还没有启动。但是"我的错误文本"没有显示!!!并且系统显示自己的错误文本("如果…,某些服务会自动停止")
当他启动服务并出现一些错误时,我如何将我的文本显示为用户的错误文本?
您可以尝试使用User32.dll
:的MessageBox
功能显示错误消息
private const int MB_SERVICE_NOTIFICATION = 0x00200000;
private const int MB_ICONERROR = 0x00000010;
[DllImport("User32", EntryPoint = "MessageBox")]
private extern static int MsgBox(int hwnd, string lpText, string lpCaption, uint uType);
protected override void OnStart(string[] args)
{
// do some code ...
// when some error occurred:
MsgBox(0, "my error text!!!", "Error", MB_SERVICE_NOTIFICATION | MB_ICONERROR);
throw new ApplicationException();
}