C#WPF开发电脑进入锁屏状态退出微信的程序

前因:当电脑登了微信,手机微信通知设置了”windows微信已登录,手机通知关闭“,这个时候手机的系统通知栏不会通知

直接原因:我下班回家,个人习惯是直接锁屏不关机,经常忘记退出微信,然后导致回到家接收不到微信通知,漏掉很多朋友的消息

结果:所以想开发一个程序,当我电脑锁屏后直接关掉微信,让我手机能够正常通知到,故开发了此程序,很简单,下列是主要的代码逻辑

复制代码
public partial class App : Application
{
    private static System.Threading.Mutex IMutex;
    protected override void OnStartup(StartupEventArgs e)
    {
        SystemEvents.SessionSwitch += new SessionSwitchEventHandler(SystemEvents_SessionSwitch);
        string MyAppID = "OnlyRun_Client";//运行进程互斥标识名称 可自行修改
        IMutex = new System.Threading.Mutex(true, MyAppID);
        if (IMutex.WaitOne(0, false))
        {
            ///正常启动程序
            base.OnStartup(e);
        }
        else
        {
            MessageBox.Show("程序已经在运行!", "提示", MessageBoxButton.OK, MessageBoxImage.Asterisk);
            this.Shutdown();//已存在运行进程 执行关闭
        }
    }

    void SystemEvents_SessionSwitch(object sender, SessionSwitchEventArgs e)
    {
        var session = e.Reason;
        switch (session)
        {
            //用户登录
            case SessionSwitchReason.SessionLogon:
                ExecSession("用户登录");
                break;
            //解锁屏
            case SessionSwitchReason.SessionUnlock:
                ExecSession("解锁屏");
                break;
            //锁屏
            case SessionSwitchReason.SessionLock:
                BeginSessionLock();
                break;
            //注销
            case SessionSwitchReason.SessionLogoff:
                ExecSession("注销");
                break;
        }
    }

    private void ExecSession(string msg)
    {
        Console.WriteLine("===>" + DateTime.Now.ToString("yyyy/MM/dd HH:mm:ss") + "  " + msg + "\n");
        CommonLog.LogWrite(msg);
    }

    /// <summary>
    /// 锁屏后执行
    /// </summary>
    private void BeginSessionLock()
    {
        ExecSession("锁屏后执行\n");
        string isopen = Config.ReadIni("EnableOpen", "IsOpen", null);
        if(isopen == "1")
        {
            Common.RunCmd("taskkill  /F /IM wechat.exe");
            ExecSession("执行完成\n");
        }
        
    }
}
复制代码

个人程序我上传到gitee,路径是 

1
https://gitee.com/wzhsun/start-tool

你可以修改成关闭其他程序,希望该程序能解决大家的困扰

程序可以去网盘下载

链接:https://pan.baidu.com/s/17JCH0MaO1UwKf6Biv5xL_w
提取码:x25t

posted @   无产铁锤  阅读(49)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· DeepSeek在M芯片Mac上本地化部署
· 葡萄城 AI 搜索升级:DeepSeek 加持,客户体验更智能
点击右上角即可分享
微信分享提示