如何实现几个应用程序之间的数据共享?
要求几个应用程序能同时访问一个数据或文件?
各位能否提供实例。绝对给分!!

解决方案 »

  1.   

    1.消息
    2.DDE.(不推荐)
    3.com (dcom ,com+) 强烈推荐
    4.文件映射 推荐
    5.dll (一般)(处理共享区互斥比较难)
      

  2.   

    msdn有例子,参考CreateFileMapping、MapViewOfFile、OpenFileMapping这些api函数的说明。
      

  3.   

    MSDN上有这方面的各种实现方法,去看看吧,会有收获的。
      

  4.   

    看了一会MSDN,头昏。有没中文的实例,偶英文特差嘎嘎,
      

  5.   

    内存文件映射是最基本的方法
    还有消息,管道,邮槽,套接字,DDE,OLE...
    具体用那种方式要看你的要求吧
      

  6.   

    windows核心编程里面好像有例子吧
      

  7.   

    MapViewOfFile() 函数状态: 正式函数 ,建设者:Ranger ,最新更新时间: 2002-2-3 11:11:19 修改该函数  函数功能描述:创建一个或多个数据文件的视图函数原型:
    LPVOID MapViewOfFile(
      HANDLE hFileMappingObject,   
      DWORD dwDesiredAccess,       
      DWORD dwFileOffsetHigh,      
      DWORD dwFileOffsetLow,       
      SIZE_T dwNumberOfBytesToMap  
    );函数参数:
    hFileMappingObject    是文件映射对象的句柄。
    dwDesiredAccess       是要对文件映射数据所做的访问。可以是FILE_MAP_READ,表示是只读访问,也可以设成
                          FILE_MAP_READ|FILE_MAP_WRITE.表示是读写访问
    dwFileOffsetHigh      是要映射到内存的文件区域的开头在文件中的偏移量的高32位。
    dwFileOffsetLow       是要映射到内存的文件区域的开头在文件中的偏移量的低32位
    dwNumberOfBytesToMap  是映射的字节数。其大小将向上取整至最接近的页边界(在Intel芯片上是4K)。如果这
                          个参数值为0,则映射整个文件。返回值:如果函数调用成功,就返回这个映射视图的字符串地址
            如果函数调用失败,就返回NULL。要获得更多的错误信息,请查阅GetLastError()使用环境:
    WindowsNT/2000,要求使用WindowsNT3.1或更新版本
    Windows95/98,要求使用Windows95或更新版本头文件:
    Winbase.h库文件:Kernel32.lib编码标准:Implemented as Unicode and ANSI versions on Windows NT/2000.示例代码:下面这个例子显示的是如何调用这个函数来创建一个引用文件的前4096字节的视图:LPVOID lpData;
    lpData=MapViewOfFile(hFileMapping,
                         FILE_MAP_READ,
                         0,
                         0,
                         4096);
    The End:
      

  8.   

    内存文件映射最快,不过我推荐用Socket通讯,既稳定又简单!!!