小弟刚接触Message Queue,现有一个很弱的问题搞不明白1.在本机的进程间通信时,Message Queue和其他的方法相比是否更优越?即,如果用于本地进程间通信(交互大量数据),是否有必要使用Message Queue?2.HRESULT APIENTRY MQOpenQueue(
LPCWSTR lpwcsFormatName, //这个路径参数表示的究竟是什么路径?
DWORD dwAccess,
DWORD dwShareMode,
QUEUEHANDLE * phQueue
);
比如: HRESULT hr;
//配置其他参数
hr = MQPathNameToFormatName( ".\\private$\\M_REVDISPLAY",
wszFormatNameBuffer,
&dwFormatNameBufferLength );
if( SUCCEED(hr) )
{
//配置其他参数
hr = MQOpenQueue( wszFormatNameBuffer,
dwAccess,
dwShareMode,
&g_hActiveQueue );
} 请问,这里的".\\private$\\M_REVDISPLAY"是什么意思?可以自己随意取一个路径名吗?还是必须先在什么地方建立一个名为M_REVDISPLAY的文件(目录或者其他的什么咚咚)才行?
LPCWSTR lpwcsFormatName, //这个路径参数表示的究竟是什么路径?
DWORD dwAccess,
DWORD dwShareMode,
QUEUEHANDLE * phQueue
);
比如: HRESULT hr;
//配置其他参数
hr = MQPathNameToFormatName( ".\\private$\\M_REVDISPLAY",
wszFormatNameBuffer,
&dwFormatNameBufferLength );
if( SUCCEED(hr) )
{
//配置其他参数
hr = MQOpenQueue( wszFormatNameBuffer,
dwAccess,
dwShareMode,
&g_hActiveQueue );
} 请问,这里的".\\private$\\M_REVDISPLAY"是什么意思?可以自己随意取一个路径名吗?还是必须先在什么地方建立一个名为M_REVDISPLAY的文件(目录或者其他的什么咚咚)才行?
进程通信好多啊:PIPE,mailslot,winsock,wm_copydata,memory map file ...
表示队列的format name,由MQPathNameToFormatName的第二个参数得到".\\private$\\M_REVDISPLAY"是一个路径名,可以自己任意取
但.\\private表示本机的私有队列,此外还有".\\public等
(装上msmq后从计算机管理中看看就知道了)