摘要:
C# 中可以操作系统当前的进程,Process类提供的是对正在计算机上运行的进程的访问,在这里要讨论到一个容易混淆的概念,进程和线程.简单的讲,进程就是计算机当前运行的应用程序,线程则是操作系统向进程分配处理器时间的基本单位.系统的进程在系统上由其进程标识符唯一标识.但是在Windows中,进程由其句柄标识,句柄在计算机上可能并不唯一,即使进程已退出,操作系统仍保持进程句柄,所以句柄泄漏比内存泄漏... 阅读全文
摘要:
进程之间通讯的几种方法:在Windows程序中,各个进程之间常常需要交换数据,进行数据通讯。常用的方法有使用内存映射文件通过共享内存DLL共享内存使用SendMessage向另一进程发送WM_COPYDATA消息比起前两种的复杂实现来,WM_COPYDATA消息无疑是一种经济实惠的一中方法.(ZT)WM_COPYDATA消息的主要目的是允许在进程间传递只读数据。Windows在通过WM_COPYD... 阅读全文
摘要:
顾名思义,微软消息队列(MSMQ)是一种给队列发送消息以便稍后进行处理的方法。消息由一个“Producer”(生产者)应用程序发送出去,再由一个“Consumer”(消费者)应用程序返回。 54ne.com 这两个应用程序可以在同一台机器上,在整个网络中,或甚至是位于并不总是连接在一起的不同机器上。MSMQ具有故障保险特性,因为如果第一次传送失败,它... 阅读全文
摘要:
1 进程与进程通信 进程是装入内存并准备执行的程序,每个进程都有私有的虚拟地址空间,由代码、数据以及它可利用的系统资源(如文件、管道等)组成。多进程/多线程是Windows操作系统的一个基本特征。Microsoft Win32应用编程接口(Application Programming Interface, API)提供了大量支持应用程序间数据共享和交换的机制,这些机制行使的活动称为进程间通信... 阅读全文
摘要:
一、应用程序间发送消息 c# SendMessage WM_COPYDATAhttp://hi.baidu.com/%BA%A3%C9%AB%B5%C4%B0%AE/blog/item/9aa62d1b44dd271a8718bf22.html二、简介: 本文着重讲述了如果用WM_COPYDATA消息来实现两个进程之间传递数据. 进程之间通讯的几种方法: 在Windows程序中,各个进程之间常常需... 阅读全文
摘要:
GetActiveWindow 只是获取当前程序中(严格地说是线程中)被激活的窗口;GetForegroundWindow 是获取当前系统中被激活的窗口.两个函数的级别不一样, 一个是线程级、一个是系统级.被激活的窗口不一定是顶层窗口(最上面的窗口).GetActiveWindow返回线程的活动窗口,而不是系统的活动窗口。如果要得到用户正在激活的窗口,应该使用GetForegroundWindow... 阅读全文
摘要:
问题的解决思路就是使用EnumWindows遍历所有的顶级父窗口,对每个顶级父窗口使用EnumChildWindows遍历它的所有控件,每个控件其实也是窗口,拿到该控件的句柄后,就可以调用GetWindowText来获取文本信息了。 具体实现时,首先需要定义以上API函数的回调函数代理:///<summary> ///回调函数代理 ///</summary> public... 阅读全文
摘要:
新闻网页贴吧知道MP3图片视频百科帮助 添加到搜藏 返回百度百科首页 编辑词条 WindowsAPI函数清单 WindowsAPI简介: API的英文全称(Application Programming Interface),WIN32 API也就是MicrosoftWindows 32位平台的应用程序编程接口。对这个定义的理解,需要追溯到操作系统的发展历史上,当WINDOWS操作系统开始占... 阅读全文
摘要:
基本思路为,寻找开始菜单按钮窗口,并模拟用户单击void pop() { User32.EnumWindows(new EnumProc(Enum), 0); } private bool Enum(IntPtr hWnd, uint param) { User32.STRINGBUFFER buffer=new User32.STRINGBUFFER(); User32.GetClassName... 阅读全文
摘要:
在C#中使用API回调函数的方法就以EnumChildWindows和EnumChildProc为例子: 首先要声明EnumChildProc 为一个回调函数 public delegate bool EnumChildProc(int hwnd, IntPtr lParam); delegate为C#中的回调类型,相当于C++里面的CALLBACK,这样就可以在下面声明EnumChildWind... 阅读全文