关于Message Queue一问,请高手帮忙
小弟刚接触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的文件(目录或者其他的什么咚咚)才行?
问题点数:120、回复次数:4Top
1 楼broadoceans(broadoceans)回复于 2003-12-03 12:43:55 得分 1
我觉得使用共享内存的方法更好一些。Top
2 楼reayi(reayi)回复于 2003-12-03 13:07:09 得分 1
进程通信好多啊:PIPE,mailslot,winsock,wm_copydata,memory map file ...
Top
3 楼vcvcc(wo)回复于 2003-12-27 16:08:43 得分 117
msmq 是微软的一个windows组件,在控制面板--添加删除程序--添加删除组件中添加即可,注意rpc等一些服务必须已经启动才能正确安装。
LPCWSTR lpwcsFormatName, //这个路径参数表示的究竟是什么路径?
表示队列的format name,由MQPathNameToFormatName的第二个参数得到
".\\private$\\M_REVDISPLAY"是一个路径名,可以自己任意取
但.\\private表示本机的私有队列,此外还有".\\public等
(装上msmq后从计算机管理中看看就知道了)Top
4 楼sh210(.....)回复于 2003-12-28 16:38:15 得分 1
markTop
相关问题
- Web Services如何访问Message Queue(消息队列)
- 请问:java中有队列(queue)这种数据结构吗?
- 请问怎样使用优先队列prior_queue?
- 一个关于queue使用的问题,请教
- how to interrupts the execution of an application so that it can process the message queue
- 还有个小问题....:***对stl 中的priority_queue 熟悉的请进**
- Queue问题,怎么控制锁?
- 请问我如何才能把变长度的数组 不断的添加道 一个 Queue 中,
- ACE有跨进程/跨机器的Message Queue消息队列吗
- IIS的\inetpub\mailroot\queue的邮件不会自动发送出去,需要按“stop",再按"play"才会发出几封,请问这是什么原因?




