调用CoCreateInstance 函数 返回值-2147221008 错误

来源:互联网 发布:宁波知豆电动汽车出租 编辑:程序博客网 时间:2024/05/17 07:34

调用之前 加HRESULT Hr = ::CoInitialize(NULL);

调用之后加::CoUninitialize();

注意CoInitialize 和 CoUninitialize 的调用时机问题

最好整个程序在初始化的时候CoInitialize,程序结束的时候CoUninitialize,过早CoUninitialize容易导致其他一些COM接口异常,网上查的CoInitialize 和 CoUninitialize可以自动一一对应,但是我在程序中这样用会出问题,比如对话框程序,点击一个按钮的事件中,

void xxx::OnButton1()

{

CoInitialize(NULL);

//新建一个窗口

CoUninitialize();

}

如上使用的话,整个程序莫名其妙的关闭,不显示了。