我如何收到我的服务正在被卸载的通知?

问题描述 投票:0回答:2

我想知道是否可以收到我的服务正在被卸载的通知?

我可以收到我的服务已停止的通知。

    protected override void OnStop()
    {
        base.OnStop();
    }

但是我如何判断它是否正在被卸载?

c# .net service
2个回答
0
投票

事实证明,可以使用服务控制 (sc) 命令从安装程序调用自定义参数:

 sc control <name_of_service> 129

其中 129 是由您的服务处理的自定义代码:

    protected enum customCommands
    {
        install = 128,
        uninstall = 129,
    }

    protected override void OnCustomCommand(int command)
    {
        base.OnCustomCommand(command);

        if (command >= 128 && command <= 255)
        {
            customCommands cust = (customCommands)command;

            switch (cust)
            {
                case customCommands.install:
                    break;

                case customCommands.uninstall:
                    break;

                default:
                    break;
            }
        }
    }

0
投票

如何收到我的服务正在被卸载的通知?

我想知道是否可以收到我的服务正在被卸载的通知?我可以收到我的服务即将停止的通知。受保护的重写 void OnStop() { base.OnStop();但我怎么知道它是否正在...

© www.soinside.com 2019 - 2024. All rights reserved.