380分大挑战!!!!!!!!!!!一个比较难的Com&ActiveX控件的问题 开的线程有没有CoInitialize?另外直接传指针不行吧?跨套间要Marshal的,要么两个都是属于一个自由线程套间。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 To plato(天天): //IDataPipe* pDataPipe;IStream* pStream=NULL;HRESULT hr=CoMarshalInterThreadInterfaceInStream(IID_IDataPipe,NULL,&pStream);if(SUCCEEDED(hr)){}我这样调用对不对? 如果你是在主线程中创建的组件对象,显然不能把他直接传到另外的线程中,方法如下:HRESULT hr;IDataPipe* pDataPipeIStream *pStream = NULL;//首先获得pDataPipe接口指针!(略)hr = CoMarshalInterThreadInterfaceInStream(IID_IDataPipe, pDataPipe, &pStream);if (FAILED(hr)){}然后你在创建线程时传递的参数应该是这样的:CreateThread(……,(LPVOID)pStream);在你创建线程中必须从pStream中取回接口指针:HRESULT hr;IDataPipe* pDataPipe;CoInitializeEx(NULL, COINIT_MULTITHREADED);hr = CoGetInterfaceAndReleaseStream(pStream, IID_IDataPipe,(void **)&pDataPipe);if (FAILED(hr)){}试试看先! WhiteWaterBlueSky写的完全对,这样就可以了。 驱动蓝屏 关于内存映射PE文件的一些问题 MFC中如何创建一个异步提示框 咋我一个模式对话框,按了OK后消失后又弹出一次,再次按OK才能消失,我双击的是listctrl里的条目 怎样学习WINDOWS编程呀 多个按键映射一个函数的问题 关于active控件 菜鸟请教空白窗口请错问题,解决问题者10分 高手都去哪了,我已经问了好几天了,在vc中怎么样判断socket的状态 一个急切的问题:在VC里如何实现禁止屏保 怎样用define定义一个常量字符串? 怎么编写自动往服务器的DNS里面添加二级域名的程序啊?
//IDataPipe* pDataPipe;
IStream* pStream=NULL;
HRESULT hr=CoMarshalInterThreadInterfaceInStream(IID_IDataPipe,NULL,&pStream);
if(SUCCEEDED(hr))
{
}
我这样调用对不对?
HRESULT hr;
IDataPipe* pDataPipe
IStream *pStream = NULL;//首先获得pDataPipe接口指针!(略)hr = CoMarshalInterThreadInterfaceInStream(IID_IDataPipe, pDataPipe, &pStream);
if (FAILED(hr))
{
}然后你在创建线程时传递的参数应该是这样的:
CreateThread(……,(LPVOID)pStream);在你创建线程中必须从pStream中取回接口指针:
HRESULT hr;
IDataPipe* pDataPipe;CoInitializeEx(NULL, COINIT_MULTITHREADED);hr = CoGetInterfaceAndReleaseStream(pStream, IID_IDataPipe,(void **)&pDataPipe);
if (FAILED(hr))
{
}试试看先!