具体来说,我想使用点对点消息队列,但因为我仍在使用 eVC++ 4 中的旧代码并且它只支持到 PocketPC 2003SE SDK,我CreateMsgQueue
在标题中找不到和朋友(更新的 VisualStudio 的端口仍在进步)
我正在使用消息队列对使用 WM-6.5-DTK (VS2005) 开发的应用程序进行 IPC。
更新:
我正在使用以下代码(取自msgqueue.h
)来存储函数指针并分别CoreDLL.dll
使用GetProcAddress()
and加载LoadLibrary()
。
HANDLE /*WINAPI*/ (*CreateMsgQueue)(LPCWSTR lpName, LPMSGQUEUEOPTIONS lpOptions);
HANDLE /*WINAPI*/ (*OpenMsgQueue)(HANDLE hSrcProc, HANDLE hMsgQ
, LPMSGQUEUEOPTIONS lpOptions);
BOOL /*WINAPI*/ (*ReadMsgQueue)(HANDLE hMsgQ,
/*__out_bcount(cbBufferSize)*/ LPVOID lpBuffer, DWORD cbBufferSize,
LPDWORD lpNumberOfBytesRead, DWORD dwTimeout, DWORD *pdwFlags);
BOOL /*WINAPI*/ (*WriteMsgQueue)(HANDLE hMsgQ, LPVOID lpBuffer, DWORD cbDataSize,
DWORD dwTimeout, DWORD dwFlags);
BOOL /*WINAPI*/ (*GetMsgQueueInfo)(HANDLE hMsgQ, LPMSGQUEUEINFO lpInfo);
BOOL /*WINAPI*/ (*CloseMsgQueue)(HANDLE hMsgQ);
WINAPI
上面的代码可以吗,因为我需要注释掉__out_bcount(cbBufferSize)
它们才能编译。