如何利用SendMessage实现C#进程间通信

 我来答
如是我之闻
推荐于2016-03-07 · TA获得超过1237个赞
知道小有建树答主
回答量:1207
采纳率:57%
帮助的人:821万
展开全部

C#在进程间通信目前有两种重要的形式

1,利用 COM User32.dll 中的 SendMessage 这是基于 COM 的消息渠道

2,利用管道 这个完全基于 .NET ,托管代码


利用 SendMessage


        [DllImport("User32.dll", EntryPoint = "SendMessage")]
        private static extern int SendMessage(IntPtr hWnd, int msg, uint wParam, uint lParam);
        //[DllImport("MessageDLL.dll", EntryPoint = "StartSendMessage")]//MessageDLL找不到

        //private static extern int StartSendMessage(IntPtr hWnd);


        //自己触发自定义消息

        private void button1_Click(object sender, EventArgs e)
        {
            SendMessage(this.Handle, Message.WM_TEST, 100, 200);
        }
        private void button2_Click(object sender, EventArgs e)
        {
            //StartSendMessage(this.Handle);

        }
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式