5

我有这个 WRL 声明(取自 MS 提供的样本中的灰度过滤器):

class CGrayscale: public RuntimeClass<
                             RuntimeClassFlags<WinRtClassicComMix>,
                             IMediaExtension,
                             IMFTransform
                          >

如何将该类转换为 C++/CX?我需要这样做的原因是因为在同一个 DLL 中,我使用 C++/CX 定义了类,这些类在后台自动为这些类生成类工厂(从我的 dll 导出的 DllGetActivationFactory)。自动 C++/CX 类工厂声明与我必须为 WRL 定义的运行时类做的类工厂声明冲突。

因此,似乎是将该 WRL 声明转换为 C++/CX 的最简单方法。如果无法使用 C++/CX 定义该类,我该怎么做才能使 WRL 和 C++/CX 定义的运行时类在同一个 dll 中共存(例如可发现)?

4

0 回答 0