代码如下: HRESULT hr = ::CoInitialize(NULL); ISelectDlg *pSelectDlg = NULL; // 注释方法导致的错误是:REGDB_E_CLASSNOTREG //hr = ::CoGetClassObject(CLSID_SelectDlg, // NULL, // NULL, // IID_ISelectFileDlg, // (void**)&pSelectDlg); // 以下是修正方法。 hr = ::CoCreateInstance(CLSID_SelectDlg, NULL, CLSCTX_INPROC_SERVER, IID_ISelectDlg, (void**)&pSelectDlg); 之前没有玩过具体的 COM 的开发。现在算是第一次自己开始做吧。遇到的问题,整理了下。 须深入理解 COM。。集结中。