首页 > 编程语言 >APP重启 - C#小函数类推荐

APP重启 - C#小函数类推荐

时间:2024-07-26 09:43:20浏览次数:9  
标签:return C# APP System 应用程序 filename using 重启

       此文记录的是一个应用程序重启的函数。

/***

    应用程序重启动

    Austin Liu 刘恒辉
    Project Manager and Software Designer

    E-Mail: [email protected]
    Blog:   http://lzhdim.cnblogs.com
    Date:   2024-01-15 15:18:00

    使用方法:
        AppUtil.RestartApplication(Application.ExecutablePath);

    说明:
        1、用于应用程序关闭后再启动操作,具体在使用时能够修改该代码;
        2、比如应用的更新操作,将应用的EXE执行文件复制过来覆盖,然后重启;

***/

namespace Lzhdim.LPF.Utility
{
    using System;
    using System.IO;
    using System.Diagnostics;
    using System.Windows.Forms;

    /// <summary>
    /// 应用工具类
    /// </summary>
    public class AppUtil
    {
        /// <summary>
        /// 重启应用程序
        /// </summary>
        public static void RestartApplication(string filePath)
        {
            Application.ExitThread();

            // 启动应用程序
            StartProcess(filePath);

            // 退出当前应用程序
            Environment.Exit(0);
        }

        /// <summary>
        /// 启动应用程序
        /// </summary>
        /// <param name="filename"></param>
        private static void StartProcess(string filename)
        {
            if (!File.Exists(filename))
            {
                return;
            }
            if (!(Path.GetExtension(filename) == ".exe"))
            {
                return;
            }

            int index = filename.IndexOf('/');
            if (index <= 0)
            {
                Process.Start(filename);
            }
            else
            {
                int length = filename.Length - index;
                string fileName = filename.Substring(0, index - 1);
                string arguments = filename.Substring(index, length);

                Process process = new Process
                {
                    StartInfo = new ProcessStartInfo(fileName, arguments)
                };
                process.StartInfo.UseShellExecute = false;
                process.Start();
            }
        }
    }
}

 

标签:return,C#,APP,System,应用程序,filename,using,重启
From: https://www.cnblogs.com/lzhdim/p/18324412

相关文章

  • 关于k8s中的pv和pvc无法绑定
    在一次申明pv和pvc时,发现两者怎么都无法绑定,以下是两个文件申明pvapiVersion:v1kind:PersistentVolumemetadata:name:my-pvspec:capacity:storage:5GiaccessModes:-ReadWriteManypersistentVolumeReclaimPolicy:RecyclestorageClassName:nfs......
  • 单机模式下ElasticSearch8(ES8设置账号密码访问)
     重置密码报错:ERROR:Failedtoresetpasswordforthe[elastic]user 修改配置文件/config/elasticsearch.yml修改或添加discovery.type:single-nodexpack.security.enabled:truexpack.security.http.ssl.enabled:falsexpack.security.enrollment.enabled:......
  • 题解:P10043 [CCPC 2023 北京市赛] 广播
    博客使用更佳:Myblog题目传送门这道题是一个标准的dp了,只不过它要倒序来做。还是分三步。初值:初值想必都知道吧,若要求最小值,就把初值设成无穷大,\(dp_{0,i}\)和\(dp_{i,0}\)都要设成\(i\),\(dp_{0,0}\)一定要赋值成\(0\),这是本人亲自犯过的错误QwQ。状态:\(dp_{i,j}......
  • 优化Python中图像中的OCR文本检测
    我目前正在用python编写一个程序,该程序获取包含大量文本的图像,将其提取到.txt文件,然后将找到的单词与另一个文件中的单词列表进行比较,并创建一些坐标(根据像素)在图像中找到的单词中,如果找到图像,则会在图像中绘制红色方块。到目前为止,我已经正确处理了坐标部分,在单词周围绘制了......
  • Linux上面部署nacos
    1)下载nacos包,并移动到/opt文件夹下面。2)解压包:unzipnacos-server-1.4.0.zip(解压之后,可以将文件移到/usr/local/文件夹下面或者保留在当前位置)3)配置Nacos:进入解压后的Nacos目录,编辑conf/application.properties文件,根据需要配置Nacos的相关参数。例如:propertiesserver.conte......
  • Rocky Linux优化
    一、修改网卡名称为eth1、方法一(在安装系统时修改):#进入启动菜单后按Tab键,在quiet后添加net.ifnames=0biosdevname=0>vmlinuzinitrd=initrd.imginst.stage2=hd:LABEL=CentOS\x207\x20x86_64quietnet.ifnames=0biosdevname=02、方法二(安装完系统修改)[root@Rocky9~]#c......
  • BGP(Border Gateway Protocol,边界网关协议)劫持是指恶意或非法地篡改BGP路由信息的行为
    BGP(BorderGatewayProtocol,边界网关协议)劫持是指恶意或非法地篡改BGP路由信息的行为。BGP是互联网上用来交换路由信息的主要协议之一,它负责决定网络数据包应该如何从一个网络路由到另一个网络。BGP劫持可以分为两种主要类型:前缀劫持(PrefixHijacking):在前缀劫持中,攻击者发送......
  • AtCoder Beginner Contest 360 题解(C-E)
    C-MoveIt题目链接:C-MoveIt题目大意:有\(N\)个盒子和\(N\)个物品编号为\(1-N\),物品\(i\)在盒子\(A_i\)中,重量为\(W_i\),你可以进行一种操作将盒子中的一件物品移动到其他任意盒子中,代价为\(W_i\),求使得所有盒子中只存在一件物品的最小操作代价。题解:贪心,可以发现......
  • 如何获取Asp.NetCore当前启动地址
    在ASP.NETCore中获取当前启动地址,可以通过几种不同的方式来实现,具体取决于你的应用场景和可用的上下文。以下是一些常见的方法:1.使用HttpContext在控制器或中间件中,你可以通过HttpContext对象来获取当前请求的完整URL或主机地址。这是最直接的方法,因为HttpContext提供了对......
  • docker搭建hadoop+hbase(待写完)
    参考文档:  1.官方文档 https://hub.docker.com/r/apache/hadoop一.创建集群配置根据文档可知,首先创建一个docker-compose.yaml文件我的文件内容如下version:"2"services:  namenode:   image:apache/hadoop:3.3.6   hostname:namenode  ......