gpt4 book ai didi

winapi - "Class not registered"在 Windows 7 上加载视频处理器 MFT 时

转载 作者:行者123 更新时间:2023-12-04 10:14:37 25 4
gpt4 key购买 nike

我有以下 COM 调用:

IMFTransform* pMFT = NULL;
HRESULT hr = CoCreateInstance(CLSID_VideoProcessorMFT, NULL, CLSCTX_INPROC_SERVER, IID_PPV_ARGS(&pMFT));

在我的开发机器上,这个电话是 CoCreateInstance成功。
但是,当我在旧的 Windows 7 机器上部署它时,
调用 CoCreateInstance失败,
我不知道为什么。
这是我显示错误的方式:
_com_error err(hr);
LPCTSTR hrErrMsg = err.ErrorMessage();
WCHAR msg[MAX_PATH];
StringCbPrintf(msg, sizeof(msg), L"HRESULT=0x%X, %s", errContext, hrErr, hrErrMsg);
MessageBox(hwnd, msg, L"Error", MB_ICONERROR);

这是我在该消息框中收到的错误:
HRESULT=0x80040154, Class not registered

即, the Video Processor MFT 的 COM 类
未注册。
我看到了 CLSID_VideoProcessorMFT定义为:
EXTERN_GUID(CLSID_VideoProcessorMFT, 0x88753b26, 0x5b24, 0x49bd, 0xb2, 0xe7, 0xc, 0x44, 0x5c, 0x78, 0xc9, 0x82);

这是 GUID 88753B26-5B24-49bd-B2E7-0C445C78C982变相。
我知道 COM 类使用包含此 GUID 的键在 Windows 注册表中注册。
在我的开发人员机器上使用注册表编辑器,我可以看到 key :
HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{88753B26-5B24-49bd-B2E7-0C445C78C982}

并且此键的“默认”值为 %SystemRoot%\System32\msvproc.dll ,
指的是文件路径 C:\Windows\System32\msvproc.dll ,
确实存在。

在我的旧 Windows 7 机器上,注册表中的这个键不存在——
正如预期的那样,鉴于“类未注册”错误。
并且在 C:\Windows\System32\msvproc.dll 处没有文件.
但这就是小道变冷的地方。
我不知道什么应该在注册表中注册该类,
以及为什么它没有在我的旧 Windows 7 机器上运行。

可能的结论:
  • 我必须自己注册视频处理器 MFT。
    但是,文档不建议这样做,
    我不知道我会怎么做。
  • Windows 7 不支持视频处理器 MFT。
    但是文档没有提供这方面的指示。
    事实上,他们说“媒体基础需要 Windows Vista 或更高版本”,
    其中应该包括我的 Windows 7 机器。
  • 我以错误的方式加载视频处理器 MFT。
    有没有更独立于系统的加载方式?

  • 以下哪个是正确的结论?是否可以在 Windows 7 上加载视频处理器 MFT?如果是这样,如何?

    最佳答案

    即使偶older documentation for Video Processor MFT没有提到可用性限制,它们仍然可以从 related content 假设:

    Requirements

    Minimum supported client: Windows 8 Release Preview

    Minimum supported server: Windows Server 2012



    以早期版本的 Windows 为目标的应用程序可能应该使用 other DSPs像色彩控制变换 DSP 和色彩转换器 DSP。不过,这些不是 GPU 加速的。

    Video Processor MFT 的优势在于它支持使用 Microsoft Direct3D 11 的 GPU 加速视频处理。

    关于winapi - "Class not registered"在 Windows 7 上加载视频处理器 MFT 时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61140795/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com