如何获取Windows服务的“句柄”,以便从Windows应用程序传递内存映射消息。两者都用Delphi编写。
答案 0 :(得分:2)
服务的句柄不是您需要的。内存映射文件名为内核对象。因此,您需要就文件映射的名称达成一致,并使用它来链接您的两个进程。
当您调用CreateFileMapping
创建文件映射或打开由其他进程创建的现有文件映射时,将名称作为最后一个参数传递。您需要使用Global\
名称空间前缀来确保文件映射位于全局名称空间中,并且可以从不同的会话中访问。
内存映射文件是服务和桌面之间IPC的不寻常选择。人们通常希望看到命名管道或套接字。