C# winform 安装服务

一、知识点

1、安装服务

installutil HardwareScanService.exe  //安装服务
sc config HardwareScanService type= interact type= own //允许服务于桌面交换
Net Start HardwareScanService //启动服务

 

2、卸载服务

installutil /u HardwareScanService.exe

 

二、程序界面        

    

 

三、具体代码实现

        delegate void deleAppendText(string str);
        deleAppendText dat;
        public Form1()
        {
            InitializeComponent();
            dat = new deleAppendText(appendText);
        }

 

 1         /// <summary>
 2         /// 批处理执行命令
 3         /// </summary>
 4         /// <param name="commands">命令</param>
 5         private void ExecBatCommand(string[] commands)
 6         {
 7             Process pro = null;
 8             pro = new Process();
 9             pro.StartInfo.FileName = "cmd.exe";
10             pro.StartInfo.UseShellExecute = false;
11             pro.StartInfo.CreateNoWindow = true;
12             pro.StartInfo.RedirectStandardInput = true;
13             pro.StartInfo.RedirectStandardOutput = true;
14             pro.StartInfo.RedirectStandardError = true;
15             pro.OutputDataReceived += new DataReceivedEventHandler(pro_OutputDataReceived);
16             pro.Start();
17             for (int i = 0; i < commands.Length; i++)
18             {
19                 pro.StandardInput.WriteLine(commands[i]);
20             }
21             pro.BeginOutputReadLine();
22             pro.Close();
23      
24         }
批处理执行命令

 

        void pro_OutputDataReceived(object sender, DataReceivedEventArgs e)
        {
            if (e.Data != null)
            {
                this.BeginInvoke(dat, new object[] { e.Data });
            }
        }
回显调用

 

        /// <summary>
        /// 安装服务
        /// </summary>
        private void install()
        {
            ExecBatCommand(new string[] { 
                "installutil HardwareScanService.exe",
                "sc config HardwareScanService type= interact type= own",
                "Net Start HardwareScanService"
            });
        }
安装服务

 

        private void uninstall()
        {
            ExecBatCommand(new string[] { 
                "installutil /u HardwareScanService.exe"
            });
        }
卸载服务

 

        private void appendText(string str)
        {
            tb_result.Text += str + "\r\n";
            //让滚动条自动滚动到最下面
            tb_result.SelectionStart = tb_result.Text.Length;
            tb_result.ScrollToCaret();
        }
向显示窗口追加内容

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值