TWICImage 在分配时出现访问冲突

TWICImage giving access violation on assignment

我正在尝试使用 C++builder 中的 TWICImage class 将内存中的位图保存到 TIFF 文件。但是,任何尝试在 TWICImage 上使用 Assign() 方法都会出现访问错误。

例如:

TBitmap* bmp = new TBitmap();
TWICImage* wic = new TWICImage();
wic->Assign( bmp );

在第三行给出访问冲突。

经过更多挖掘,以下给出了第二次和后续分配的错误:

TBitmap* bmp = new TBitmap();
for (int i=0; i<10; ++i) {
    std::unique_ptr<TWICImage> wic( new TWICImage() );
    wic->Assign( bmp );
}

但是,如果我将 TWICImage 指针设置为静态,它就会按预期工作。所以看起来 TWICImage 析构函数中发生了一些奇怪的事情。