收录日期:2018/10/23 18:30:03 时间:2016/05/20 18:28:04 标签:进程/线程/DLL
好象可以通过管道或者共享内存实现,不知道该如何做,请教各位。
用内存映射文件
这也太笼统了,我不是天才,希望各位能详细点
分好象少了点,不知道如何加分
RegisterWindowMessage
SendMessage

OR

Pipe
使用内存映射文件的方法
  1、利用内存映射文件进行文件I/O操作,进行文件I/O操作需要下面几个步骤:
  步骤一:调用CreateFile()函数,以适当的方式创建或打开一个文件核心对象;
  步骤二:把CreateFile()函数返回的文件句柄作为参数,传给CreateFileMapping()函数,由CreateFileMapping()函数创建一个文件映射核心对象的适当属性;
  步骤三:创建了文件映射核心对象后,调用MapViewOfFile()函数,告诉系统把文件的哪一部分映射到进程的地址空间中,以何种方式映射;
  步骤四:利用MapViewOfFile()函数返回的指针来使用文件数据;
  步骤五:操作完毕后,调用UnmapViewOfFile()函数,告诉系统撤销对文件映射核心对象的映射;
  步骤六:使用CloseHandle()函数关闭文件映射核心对象;
  步骤七:使用CloseHandle()函数关闭文件核心对象;
  利用内存映射文件实现WIN32进程间的通信
  一个进程打开的文件映射对象的映射区对所有的WIN32进程都是可视的,并且映射区的地址对所有WIN32进程都是一样的。一个进程可以打开一个文件,创建文件映射核心对象,用MapViewOfFile()函数打开文件视图,然后将文件映射的地址传给另一个进程,第二个进程就可以读出文件中的数据。这种方法需要进行各进程间的同步,实现起来较困难。并且在Windows中,一个映射区在不同的WIN32进程空间中对应的地址不同,因此为了与Windows兼容,尽量不要使用这种方法。
  第二种方法是两个进程使用同一文件映射核心对象,打开各自的视图,或者父进程把自己创建的文件映射核心对象继承给子进程使用。这种方法比较安全有效。
  第三种方法是创建基于页面交换文件的内存映射对象。在调用CreateFileMapping()函数时,传递文件句柄为0xFFFFFFFF,系统就从页面交换文件中提交物理存储,然后进程之间按照第二种方法进行通信。这种方法不用事先准备一个特殊的文件,非常方便
多个程序在访问文件映射对象,为了避免访问到“脏”数据,最好采用信号量互斥地访问。所以时序一定要控制好。
另外,我在使用文件映射对象,有时关闭其中一个程序(进程),文件映射对象会丢失了。不知是哪个参数设置出了问题。请指点。(到运行时,访问是没有问题的)
简单的可以用消息来传递。 WM_APP起始的被系统认为是进程间消息。
简单的进程通信可以用消息。远程的就要用RPC了,比较复杂些。

坚持汉服就是坚持自由的精神 关于字符串的问题 经典影片推荐,可以进来看看 透明的图象Static是如何做出来的? borland c++ builder5.5 的配置文件 问:多个cpp同时使用一个全局变量,最好的实现方法 现在的用人单位是不是缺乏用人经验?如果是,就应该高价请容易管理的人来,锻炼一下自己的用人能力. 为什么我在浩方玩星际老是掉线呢? 求助:用JB+WL运行一个servlet,JB编译通过,但运行时抛出异常:Logging Error: Could not set up Cocoon Logger, will use screen inste 制作安装的问题,装好后VS2003不能用了。 证明: x^2-x+41是素数(0<=x<=40)。100分 存储过程转换int总是错误? 利用 xhtml 的思路,加上IE浏览器的奇怪解析CSS2,不用JS实现鼠标交换图片。 鸡年到!祝大家在鸡年里鸡遇多多! 用javascript 做的一些动态HTML效果 如何应用到asp.NET 中??? 高分救急,各位帮忙看看这是怎么回是! 关于CPORT3.0控件和串口通讯!! 怎么让我的电脑里的内容恢复分类显示啊? 求教:STL库在多Dll环境下使用不当时,会在析构的时候不断报错 为什么在对话框中不能使用vector?重分悬赏 求解啊,关于获到目录下文件,然后分页显示的问题 100%结贴率 我想查询家里电话(宅电)的呼入记录,我该怎么做 今天开发完成了一套数据自动跟踪分析决策系统 jdbc 问题,请高手帮帮忙(在线等) 曾牧暗鲨: 请客 请留在深圳的BCBFans 请问在fedora3下能不能用命令行模式? 寻找播放软件!!!急在线等待 #include 的多重嵌套 请教大家一个问题,大家有知道worldedo这个网络公司是什么一回事不? asp.net中的之间的程序一般有几种开头啊?