C++异常处理,像Jao提问
我用C#编写了一个com组件,在这个dll文件中有个WriterLog()方法
void WriterLog(string str, string msg);
CoInitialize(NULL); //注意初始化 MyLib::IMyClassPtr p(__uuidof(MyLib::MyClass)); //创建智能指针 CString str="Hello";//你自己的代码 BSTR bsName = str.AllocSysString(); //分配内存并转换 p->WriterLog("VCLog","服务已经启动..."); try { p->Example(); GetDlgItem(IDC_EDIT1)->SetWindowText(p->TurnExample()); GetDlgItem(IDC_EDIT2)->SetWindowText(p->RefExample(&bsName)); SysFreeString(bsName); //回收内存,但不会清空,不过还是在RefExample使用后释放比较好 cout<<p->WriterLog("VCLog","已经执行完毕...")<<endl; } catch (exception &e) { cout<<p->WriterLog("VCLog",e.what())<<endl; } CoUninitialize();