C#进程间通信,传递消息给其它窗口
来源:互联网 发布:2016中日贸易数据 编辑:程序博客网 时间:2024/05/20 23:36
目前,网上关于C#进程间通信的方法有很多种,但是总结起来它们不外乎从以下两个方面进行考虑:
一、在两个进程之间建立一个共同区域,其中一个进程改变这个区域的内容,而另一个进程则去读取它,反之亦 然。比如,可以让两个进程共享同一块内存,通过改变和读取内存中的内容进行通信;或者,创建一个文件,两个进程同时占用,甚至可以利用注册表或者剪贴板充当这个“共同区域”。
二、利用API函数去找到进程窗口的句柄,然后用API去控制这个窗口。例如,导入“User32.dll”中的FindWindow、FindWindowEx函数查找窗口,并获取窗口句柄,也可直接利用C#中的Process类来启动程序,并获取这个进程的主窗口的句柄,等等。
在编程时,我们往往需要选择一种即方便编写,效率又高的程序。第一种类型相对比较复杂,而且效率不高,相比来讲,第二种类型在不降低程序运行效率的情况下编写更简单。下面我就以一个示例程序来讲解如何使用Process类和API实现两个进程之间的传输数据。
第一步:
(1)打开VS2008,新建一个“windows 应用程序”,主窗口为Form1
(2)在Form1上添加一个标签label1,并为Form1添加KeyDown事件,当Form1接收到KewDown消息时,将接收到的数据显示在label1上。
(3)编译运行,生成Form1.exe
第二步:
(1)打开VS2008,新建一个“windows 应用程序”,主窗口为Form2,并在Form2上添加三个按钮和一个文本
(2)在Form2.cs中添加引用:
(3)在Form2类中定义以下两个变量
(4)为Form2添加Load事件响应
(5)为button1,button2,button3分别添加click事件响应,并添加响应内容:
(6)编译运行,生成Form2.exe
第三步:
转载自:http://blog.sina.com.cn/s/blog_873a233e0100vop4.html
- C#进程间通信,传递消息给其它窗口
- C#窗口间传递消息
- C# 窗口消息传递
- VC进程间通信之消息传递
- linux 进程间通信之消息传递
- linux 进程间通信之消息传递
- linux进程间通信之消息传递
- 进程间消息通信实现窗口控制
- 进程间通信——消息传递(消息队列)
- C# 向其它窗口 按键消息
- c#进程间通信-接收消息
- 进程间通信——消息传递(管道)
- VC进程间通信之消息传递PostMessge()或SendMessage()
- MFC (通过WM_COPYDATA消息) 进程间通信以及数据传递
- 进程间传递消息
- C#进程间通信--API传递参数(SendMessage)
- C#进程间通信--API传递参数(SendMessage)
- C#进程间通信--API传递参数(SendMessage)
- ViewPager切换动画
- VMware Workstation 14永久激活密钥
- AngularJs购物车删除和计算总金额
- Windows 关机命令
- WPF绘制3D动画效果
- C#进程间通信,传递消息给其它窗口
- <转载>eclipse 配置黑色主题
- 安卓手把手教你学习并实现 安卓耳机口音频转红外发射
- cobbler自动定制安装CentOS6.6
- LeetCode 189.Rotate Array
- struts2-6为action属性注入值
- 指正
- MongoDB的shell操作
- 得到内容分析 专栏 每天听书