ShowDialog导致堆错误

时间:2011-10-12 07:07:42

标签: c++ winforms

我有一个COM服务器(进程外),我在其中调用FolderBrowserDialog(C ++,WindowsForms)的ShowDialog()。当我想要停止COM服务器时,它会崩溃,说有一个堆错误。如果我只是在不调用ShowDialog的情况下创建FolderBRowserDialog,则不会发生错误......在进行研究时,我会阅读有关必须手动处理的内容,但无法调用dispose方法。使用删除也无法解决我的问题。有任何想法吗?以下是代码段:

...
FolderBrowserDialog^ fbd = gcnew FolderBrowserDialog(); 
fbd->Description = "MAS Open dialog";
fbd->RootFolder = Environment::SpecialFolder::MyComputer;
fbd->SelectedPath = Str;
...
res = fbd->ShowDialog(gcnew WindowWrapper(hwnd));
...

1 个答案:

答案 0 :(得分:0)

我遇到了同样的问题,你必须致电

delete fbd;

ShowDialog