动态链接库和IPC

【勇芳软件工作室】汉化HomePreviousNext

可以构建一个基于Win32的动态链接库(DLL),使其全局数据与调用该DLL的所有进程共享。因此,协作过程可以调用DLL来检查和修改DLL拥有的全局数据。例如,进程A使用DLL存储在其全局数据空间中的数据来调用DLL函数。进程B调用另一个检索该数据的DLL函数。由于Win32 API的多任务性质,DLL将不得不使用信号量或其他同步对象来控制对共享内存的访问。

虽然可以在DLL中使用共享的全局数据,但建议对共享内存使用Win32文件映射。文件映射更有效率,并提供访问保护的额外优势。(例如,客户端可以限制为对文件映射对象的只读访问。)

关键尽管开发人员可以使用DLL中的共享全局数据段来允许两个或多个应用程序共享数据,但最好使用Win32文件映射函数来创建共享内存。有关详细信息,请参阅动态链接库.