搜索
bottom↓
回复: 12

分享 可以定时自动重启exe的小软件

[复制链接]

出0入0汤圆

发表于 2016-4-27 10:31:33 | 显示全部楼层 |阅读模式
服务器有个小软件运行24小时后,需要重启,今天抽时间写了个小软件,测试没问题共享出来!

阿莫论坛20周年了!感谢大家的支持与爱护!!

阿莫论坛才是最爱国的,关心国家的经济、社会的发展、担心国家被别国牵连卷入战争、知道珍惜来之不易的和平发展,知道师夷之长,关注世界的先进文化与技术,也探讨中国文化的博大精深,也懂得警惕民粹主义的祸国殃民等等等等,无不是爱国忧民的表现。(坛友:tianxian)

出0入0汤圆

 楼主| 发表于 2016-4-27 10:33:24 | 显示全部楼层
这是软件界面,很简单

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出0入0汤圆

 楼主| 发表于 2016-4-27 10:34:38 | 显示全部楼层
  1. using System;
  2. using System.Collections.Generic;
  3. using System.ComponentModel;
  4. using System.Data;
  5. using System.Drawing;
  6. using System.Linq;
  7. using System.Text;
  8. using System.Windows.Forms;
  9. using System.Diagnostics;

  10. namespace ProcessManager
  11. {
  12.     public partial class Form1 : Form
  13.     {
  14.         bool reStartFlag = false;
  15.         bool FlagExe = false;
  16.         int cnt = 0;
  17.         int startPwrSec = 0;
  18.         int startPwrMin = 0;
  19.         int startPwrHour = 0;

  20.         public Form1()
  21.         {            
  22.             InitializeComponent();            
  23.         }

  24.         private void button1_Click(object sender, EventArgs e)
  25.         {
  26.             OpenFileDialog openFileDialog = new OpenFileDialog();
  27.             openFileDialog.InitialDirectory = "E:\";
  28.             openFileDialog.Filter = "可执行文件|*.exe";
  29.             if (openFileDialog.ShowDialog() == DialogResult.OK)
  30.             {
  31.                 textBox2.Text = openFileDialog.FileName;
  32.             }
  33.         }

  34.         private void checkBox1_CheckedChanged(object sender, EventArgs e)
  35.         {
  36.             string str = null;
  37.             string[] strT;
  38.             if (checkBox1.Checked)
  39.             {
  40.                
  41.                 button1.Enabled = false;
  42.                 textBox1.Enabled = false;

  43.                 str = textBox1.Text;
  44.                 strT=str.Split(':');
  45.                 startPwrHour = Convert.ToInt32(strT[0]);
  46.                 startPwrMin = Convert.ToInt32(strT[1]);
  47.                 startPwrSec = Convert.ToInt32(strT[2]);

  48.                 timer1.Enabled = true;

  49.             }
  50.             else
  51.             {
  52.                 timer1.Enabled = false;
  53.                 button1.Enabled = true;
  54.                 textBox1.Enabled = true;
  55.             }
  56.         }

  57.         private void timer1_Tick(object sender, EventArgs e)
  58.         {
  59.             if (DateTime.Now.Hour == startPwrHour)
  60.             {
  61.                 if (DateTime.Now.Minute == startPwrMin)
  62.                 {
  63.                     if (DateTime.Now.Second == startPwrSec)
  64.                     {
  65.                         reStartFlag = true;
  66.                     }
  67.                 }
  68.             }
  69.             if (reStartFlag)
  70.             {
  71.                 reStartFlag = false;
  72.                 FlagExe = true;
  73.                 kill_Process(textBox3.Text);
  74.             }
  75.             if (FlagExe)
  76.             {
  77.                 cnt++;
  78.                 if (cnt > 3)
  79.                 {
  80.                     cnt = 0;
  81.                     FlagExe = false;
  82.                     System.Diagnostics.Process.Start(textBox2.Text);
  83.                 }
  84.             }

  85.         }

  86.         private void kill_Process(string processName)
  87.         {
  88.             Process[] processes = Process.GetProcessesByName(processName);
  89.             // 构造进程数组
  90.             foreach (Process p in processes)
  91.             {

  92.                 p.Kill();
  93.                 //等待被杀死的进程退出
  94.                 p.WaitForExit();
  95.                 //跳出foreach循环,可有可无
  96.                 break;
  97.             }
  98.         }
  99.     }
  100. }
复制代码

出0入0汤圆

 楼主| 发表于 2016-4-27 10:36:51 | 显示全部楼层
vs2010 源码

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出0入0汤圆

 楼主| 发表于 2016-4-27 10:38:55 | 显示全部楼层
stm8s10x 发表于 2016-4-27 10:37
搞个BAT批处理,岂不是更简单?

不会BAT,请赐教

出0入58汤圆

发表于 2016-4-27 10:43:27 | 显示全部楼层
本帖最后由 shawn_bu 于 2016-4-27 10:46 编辑

windows Task Scheduler也可以,而且功能更丰富。



编辑,添加截图。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出0入0汤圆

发表于 2016-4-27 10:52:38 | 显示全部楼层
windows自带的计划任务就可以了

出0入0汤圆

发表于 2016-4-27 11:15:50 | 显示全部楼层
学习了···············

出0入0汤圆

 楼主| 发表于 2016-4-27 11:21:33 | 显示全部楼层
shawn_bu 发表于 2016-4-27 10:43
windows Task Scheduler也可以,而且功能更丰富。

我的是 win server2008 r2 没有Task Scheduler

出0入58汤圆

发表于 2016-4-27 11:23:31 | 显示全部楼层
spring152 发表于 2016-4-27 11:21
我的是 win server2008 r2 没有Task Scheduler

我用win server 2003都有。看这篇文章 https://technet.microsoft.com/en-us/library/cc766428.aspx  

出0入0汤圆

 楼主| 发表于 2016-4-27 12:41:54 | 显示全部楼层
stm8s10x 发表于 2016-4-27 12:06
见附件,不知道是不是你想要的功能

不是重启电脑,是重启某个exe程序
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片。注意:要连续压缩2次才能满足要求!!】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-9-16 10:12

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表