托盘程序要点汇总

1.重启一个进程

var ss = "taskkill /im " + 进程名称 + " /f ";

   RunCmd(ss);

ProcessStartInfo info = new ProcessStartInfo();
info.FileName =进程路径;
var pro = Process.Start(info);
pro.WaitForExit();

2.停止一个进程

var ss = "taskkill /im " + 进程名称 + " /f ";

   RunCmd(ss);

3.只能启动一个进程

ISingleInstanceApp

SingleInstance<App>.InitializeAsFirstInstance

SingleInstance<App>.Cleanup();

private string RunCmd(string command)
{
//實例一個Process類,啟動一個獨立進程
System.Diagnostics.Process p = new System.Diagnostics.Process();

//Process類有一個StartInfo屬性,這個是ProcessStartInfo類,包括了一些屬性和方法,下面我們用到了他的幾個屬性:

p.StartInfo.FileName = "cmd.exe"; //設定程序名
p.StartInfo.Arguments = "/c " + command; //設定程式執行參數
p.StartInfo.UseShellExecute = false; //關閉Shell的使用
p.StartInfo.RedirectStandardInput = true; //重定向標準輸入
p.StartInfo.RedirectStandardOutput = true; //重定向標準輸出
p.StartInfo.RedirectStandardError = true; //重定向錯誤輸出
p.StartInfo.CreateNoWindow = true; //設置不顯示窗口

p.Start(); //啟動

//p.StandardInput.WriteLine(command); //也可以用這種方式輸入要執行的命令
//p.StandardInput.WriteLine("exit"); //不過要記得加上Exit要不然下一行程式執行的時候會當機

return p.StandardOutput.ReadToEnd(); //從輸出流取得命令執行結果

}

时间: 2024-08-06 21:40:43

托盘程序要点汇总的相关文章

Apple Watch: WatchKit 应用程序要点

Apple Watch: WatchKit 应用程序要点 本文译自:Apple Watch: WatchKit App Essentials WatchKit 应用程序架构 上一篇文章简单介绍了 WatchKit,在开发 Apple Watch 应用程序时由两部分构成:WatchKit 应用程序和 WatchKit 扩展. WatchKit 应用程序是一个运行在 Apple Watch 中的可执行文件.它包括 storyboard 和渲染屏幕时所需的资源文件. WatchKit 扩展则是运行在

玩转VC++系统托盘程序(WIN8)

 WINDOWS系统托盘是一个特殊区域,通常在桌面的右下角,也就是任务栏的右边.系统常驻在托盘的程序有时钟,音量控制,输入法,网络状态等.第三方应用如QQ程序也是一个典型的托盘程序,当最小化时企鹅会乖乖的待在屏幕右下角等待主人的呼唤. 系统托盘的方便之处在于,程序在暂时不用时,将它放到托盘里,随用随叫,不必将其关闭.而QQ在接收到消息后,也会在托盘中闪动提示,十分人性化. 那么如何用VC++来开发托盘程序呢?下面会用一个例子来玩转WINDOWS托盘程序. 首先,定义一下需要的功能.(需求确定

【VC编程技巧】窗体?3.7托盘程序介绍(模拟QQ消息)

所谓的托盘程序就是运行时在系统托盘区(就是桌面右下角显示时间的区域)出现一个小图标的程序.代表它运行的图标称作托盘图标.我们可以通过使用小图标来控制应用程序的状态. (一)NOTIFYICONDATA Structure typedef struct _NOTIFYICONDATA { DWORDcbSize;//结构体大小 HWNDhWnd;//接受icon消息的窗口句柄 UINT uID;//icon图标的资源Id UINTuFlags;//标志一些成员是否有效 UINTuCallbackM

托盘程序开发

托盘程序 OninitDialog() 在主界面的OninitDialog()函数里添加代码 BOOL CMFC07trayiconDlg::OnInitDialog() { // TODO: 在此添加额外的初始化代码 NOTIFYICONDATA m_tnid; m_tnid.cbSize = sizeof(NOTIFYICONDATA);//设置结构大小// m_tnid.hWnd = this->m_hWnd;//设置图标对应的窗口 m_tnid.uFlags = NIF_MESSAGE

C/S结构软件测试要点汇总

C/S结构测试要点 1.安装/卸载: 1.安装包:完整性,安装包大小是否达到要求,显示基本信息是否正确,步骤是否明确,内容是否合理. 2.首次安装: 1)是否与其他已安装的软件冲突. 2)各种杀毒软件(卡巴.瑞星.360)对安装程序的影响) 3)安装目录的考虑(中英文字符.长度.空目录.根目录.修改目录.默认目录) 4)干净环境下能否正常完成安装 5)安装后快速启动.桌面.开始程序里面的快捷方式情况等 6)360一键智能安装是否能正常完成 7)安装的程序是否带有插件 3.再次安装: 1)在已经安

VC/MFC如何将本窗口显示并激活成为当前窗口 ?托盘程序

本以为很简单的,没想到各种函数都试了,结果还是不行,只能在任务栏中显示,还要点击以下任务栏那里才可以看得到窗口... //    CRect c; //    this->GetWindowRect(&c); this->ShowWindow(SW_SHOWNA);//简单的显示主窗口完事儿 this->SetActiveWindow(); this->SetForegroundWindow(); //this->SetWindowPos(this,LOWORD(lP

Delphi开发单机瘦数据库程序要点(后缀cds)

一.概述 Delphi作为Windows下的一种快速开发工具,不仅能开发一般的Windows应用程序,而且还具有强大的数据库应用程序开发功能.Delphi本身提供了对BDE,ODBC,ADO和InterBase几种数据库驱动的支持,能够满足不同应用对数据库程序开发的需要. 然而,在发布用Delphi开发的数据库程序时,除了要安装应用程序之外,还需要同时发布数据库驱动程序.这对于一些只涉及单个或多个简单表数据存储的单机应用程序来说,就显得有点头重脚轻的感觉了.况且,有些应用程序本身需要存储大量数据

《Javascript启示录》要点汇总

前言:本文是阅读<Javascript启示录>后的一个读书笔记,对本书的要点进行了一个归纳,不是原创内容哦.要想详细了解相关内容,请阅读原书. 对象是由存储值的已命名属性组成的. JavaScript中的几乎所有对象都可以表现得像对象.复杂值是对象,原始值也可以看做对象. 对象是通过使用new关键字调用构造函数或者通过使用字面量表达式来创建的. 构造函数是对象(Function()对象),因此在JavaScript里对象创建对象. JavaScript提供9个原生构造函数:Object(),A

微信小程序教程汇总

目前市面上在内测期间出来的一些实战类教程还是很不错的,主要还是去快速学习小程序开发的整体流程,一个组件一个组件的讲的很可能微信小程序一升级,这个组件就变了,事实本就如此,谁让现在是内测呢.我们不怕,下面就推荐一些涵盖了大部分组件和API的实战项目类课程. 讲项目实战,主要是学习的小程序的开发思路,架构思路,组价稍带就过,不会的看文档喽,还有比官网文档更详细的教程咩. 我们小黄象社区为此录制三套实战类视频教程,实战项目快速学习小程序开发.另外社区专栏作家也贡献了优质的小程序教程专栏,下面已经列出.