在DLL中调用IWbemLocator::connectServer卡死无返回

Areslee 2016-09-30 03:50:47
UINT DebugTest2(void)
{
HRESULT hRet=CoInitializeEx(NULL,COINIT_MULTITHREADED);
IWbemServices *m_pService;
CComPtr<IWbemLocator> Locator;
if(RPC_E_TOO_LATE==hRet)
{
hRet=S_OK;
}
else if(FAILED(hRet))
{
return hRet;
}

hRet=CoInitializeSecurity(NULL, // we're not a server
-1, // we're not a server
NULL, // dito
NULL, // reserved
RPC_C_AUTHN_LEVEL_DEFAULT, // let DCOM decide
RPC_C_IMP_LEVEL_IMPERSONATE,
NULL,
EOAC_NONE,
NULL );
if((RPC_E_TOO_LATE!=hRet)&&FAILED(hRet))
{
return hRet;
}

hRet=CoCreateInstance(CLSID_WbemLocator,NULL,CLSCTX_INPROC_SERVER,IID_IWbemLocator,reinterpret_cast<void**>(&Locator));
if(FAILED(hRet))
{
return hRet;
}
hRet=Locator->ConnectServer(L"root\\cimv2",NULL,NULL,NULL,WBEM_FLAG_CONNECT_USE_MAX_WAIT,NULL,NULL,&m_pService);
.....
}


之前在另一个工程中(EXE)同样的代码能正常工作,但放到后到DLL之后卡死在ConnectServer()上,不知道为什么,求大牛指点。谢谢
...全文
438 2 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
Areslee 2016-10-01
  • 打赏
  • 举报
回复
找到原因了,不能在DllMain里调
oyljerry 2016-09-30
  • 打赏
  • 举报
回复
可能只能主线程中调用这个接口
内容概要:该文档为一段用于Google Earth Engine(GEE)平台的JavaScript代码脚本,旨在对研究区域(AOI)内的Landsat 8卫星影像进行土地利用/土地覆盖(LULC)分类。脚本首先筛选2024年云量低于10%的Landsat 8 Level-2地表反射率影像,构建值合成影像并应用缩放因子校正。随后,基于预先定义的水体(Water)和植被(Vegetation)样本点,合并训练样本并提取影像对应波段数据,采用随机森林分类器(smileRandomForest)对影像进行监督分类。最后,通过划分训练集与测试集,输出混淆矩阵、总体分类精度和Kappa系数,完成分类结果的精度评估。; 适合人群:具备遥感图像处理基础知识的科研人员、地理信息系统(GIS)技术人员以及环境监测相关领域的研究生或专业人员;熟悉GEE平台基本操作者更佳; 使用场景及目标:①实现特定区域多光谱遥感影像的土地覆盖分类;②掌握GEE平台上从影像预处理、样本构建、模型训练到精度验证的完整分类流程;③支持水资源管理、生态环境监测等应用领域的空间数据分析; 阅读建议:此资源以实际代码形式呈现,建议结合GEE开发环境边运行边学习,重点关注影像预处理方法、训练样本构建逻辑、分类器参数设置及精度评估指标解读,便于迁移应用于其他区域或传感器数据。

3,248

社区成员

发帖
与我相关
我的任务
社区描述
ATL,Active Template Library活动(动态)模板库,是一种微软程序库,支持利用C++语言编写ASP代码以及其它ActiveX程序。
社区管理员
  • ATL/ActiveX/COM社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧