zoukankan      html  css  js  c++  java
  • 监听程序

    //运行监听程序
    ThreadPool.QueueUserWorkItem((x) =>
    {
    try
    {
    bool sqd = true;
    Process[] SERVER = Process.GetProcessesByName("MonitorServer");   //获取线程名相同
    foreach (Process item in SERVER)
    {
    if (Path.GetDirectoryName(item.MainModule.FileName).Equals(Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location.Replace("/", "\"))))
    {
    sqd = false;
    break;
    }
    }
    if (sqd)
    {
    ProcessStartInfo ps = new ProcessStartInfo("MonitorServer.exe");
    ps.UseShellExecute = false;
    ps.WindowStyle = ProcessWindowStyle.Hidden;   //隐藏线程
    Process.Start(ps);
    }
    }
    catch { }
    }, new object());

    关闭窗体   同时关闭监听程序

    private void ServerAuto_FormClosing(object sender, FormClosingEventArgs e)
    {
    try
    {
    if (e.CloseReason == CloseReason.WindowsShutDown || e.CloseReason == CloseReason.UserClosing)
    {
    Application.ExitThread();
    Application.Exit();
    //Process.GetProcessesByName("MonitorServer")[0].Kill();
    Process[] SERVER = Process.GetProcessesByName("MonitorServer");
    foreach (Process item in SERVER)
    {
    if (Path.GetDirectoryName(item.MainModule.FileName).Equals(Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location.Replace("/", "\"))))
    {
    item.Kill();
    }
    }
    Process[] CLIENT = Process.GetProcessesByName(Process.GetCurrentProcess().ProcessName);
    foreach (Process item in CLIENT)
    {
    if (Path.GetDirectoryName(item.MainModule.FileName).Equals(Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location.Replace("/", "\"))))
    {
    item.Kill();
    }
    }
    }
    }
    catch { }
    }

  • 相关阅读:
    解决span中的内容不换行
    javascript中apply、call和bind的区别
    vuex及其属性应用
    55.动态加载Html
    58.圆角图片
    57.动态添加子View(Java/XML两种方式)
    56.Java与js交互
    59.仿微信的图片浏览器
    64.判断当前线程是否是主线程
    61.自定义Indicator
  • 原文地址:https://www.cnblogs.com/yyl001/p/10281856.html
Copyright © 2011-2022 走看看