WPF实现单进程实例应用程序(像Word一样可以打开多个文件)
2016-09-26 19:50
543 查看
第一步
新建一个WPF应用程序,取名WPFSingleInstance
第二步
项目中添加引用:C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework.NETFramework\v4.0\Profile\Client\Microsoft.VisualBasic.dll
第三步:
在MainWindow中添加个一个Button,用来显示
第四步:
新建一个文件,并重新命名名称空间,并添加如下代码:
第五步:
右键项目属性->Application->Startup Object下拉菜单选择MyAppStartup.Startup
第六步:
Build,然后生成exe文件,打开exe,会产生一个窗口,再双击exe文件,又产生一个窗口,但是你在任务管理器中查看,只有一个进程。
新建一个WPF应用程序,取名WPFSingleInstance
第二步
项目中添加引用:C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework.NETFramework\v4.0\Profile\Client\Microsoft.VisualBasic.dll
第三步:
在MainWindow中添加个一个Button,用来显示
第四步:
新建一个文件,并重新命名名称空间,并添加如下代码:
namespace MyAppStartup { public class Startup { [STAThread] public static void Main(string[] args) { SingleInstanceApplicationWrapper wrapper = new SingleInstanceApplicationWrapper(); wrapper.Run(args); } } public class SingleInstanceApplicationWrapper : WindowsFormsApplicationBase { private App app; // The actual WPF Application private int Num=0; public SingleInstanceApplicationWrapper() { this.IsSingleInstance = true; } // The first open protected override bool OnStartup(Microsoft.VisualBasic.ApplicationServices.StartupEventArgs e) { app = new App(); MainWindow win = new MainWindow(); win.Title = Num.ToString(); app.Run(win); return false; } // The next open protected override void OnStartupNextInstance(StartupNextInstanceEventArgs e) { Num += 1; MainWindow win = new MainWindow(); win.Title = Num.ToString(); win.Show(); } } /// <summary> /// Interaction logic for App.xaml /// </summary> public partial class App : Application { } }
第五步:
右键项目属性->Application->Startup Object下拉菜单选择MyAppStartup.Startup
第六步:
Build,然后生成exe文件,打开exe,会产生一个窗口,再双击exe文件,又产生一个窗口,但是你在任务管理器中查看,只有一个进程。
相关文章推荐
- Winform and WPF 第二遍双击快捷方式或应用程序打开原来的应用程序而不新建一个实例[进程通信 1]
- C#中将某一文件拖向应用程序后打开或进行其它操作的实现
- 实现一个应用程序只能打开一个进程
- c++builder 如何实现一个应用程序只能打开一个进程
- PowerShell实现查询打开某个文件的默认应用程序
- asp.net 实现打开文件所在的文件夹, 本地可以打开,发布后点击按钮没有反应的解决办法
- ulimit的修改(主要修改可以打开的文件数和进程数)
- 象WORD一样,双击.doc的文件就自动打开WORD并编辑该文件(转)
- 编写一个基于对话框的应用程序可以用来打开及显示文本文件设置所显示的文本的字体颜色。
- 编写一个通讯录,功能与以前的诺基亚手机一样,可以通过键盘进行箭头的移动,回车进入选项,用“W”键代表手机手机左键,“backspace”键代表返回上一级。能够实现基本的人性化的增删改查及文件的导入导出
- MFC如何实现打开一个文件,就像安装完某个程序然后弹出一个readme.txt一样?
- 进程地址空间的共享(可以实现一个程序只有一个实例运行)
- JAVA实现打开文件对话框(可以指定所需打开文件的格式)
- 象WORD一样,双击.doc的文件就自动打开WORD并编辑该文件
- 老大要求把Word文档加上公司的标识,公司名文字或者logo图片都可以,但要求是用电脑打开(电子文档时)能看见标识,如果打印出来(纸质文档)就不显示出来,如何实现?
- 象WORD一样,双击.doc的文件就自动打开WORD并编辑该文件
- 双击DOC/xls文件打不开,但从Word/excel里可以打开的解决方法
- WPF如何实现拖拽打开文件(将文件拖进窗体打开)
- 双击DOC/xls文件打不开,但从Word/excel里可以打开的解决方法
- 用MFC实现打开word文件