简体   繁体   English

ComCtl32.dll Ordinal 345 not found 错误仅在 Windows XP

[英]ComCtl32.dll Ordinal 345 not found error only on Windows XP

I need to make an application that runs on Windows XP and up for multiple reasons.由于多种原因,我需要制作一个在 Windows XP 及更高版本上运行的应用程序。 I am using ComCtl32.dll to call TaskDialogIndirect.我正在使用 ComCtl32.dll 调用 TaskDialogIndirect。 The only problem is that the error "The ordinal 345 could not be located in..." only occurs on Windows XP.唯一的问题是错误“序数 345 无法位于...”仅出现在 Windows XP 上。 The program runs fine on all other versions.该程序在所有其他版本上运行良好。 I do have a manifest in my.rc file with the ID 1. The only things that I am currently mainly using from我在 my.rc 文件中确实有一个 ID 为 1 的清单。我目前主要使用的唯一东西来自

I could not find any solution to this problem online.我在网上找不到任何解决此问题的方法。

My manifest:我的清单:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<assemblyIdentity
    version="1.0.0.0"
    processorArchitecture="*"
    name="redacted"
    type="win32"
/>
<description>redacted</description>
<dependency>
    <dependentAssembly>
        <assemblyIdentity
            type="win32"
            name="Microsoft.Windows.Common-Controls"
            version="6.0.0.0"
            processorArchitecture="*"
            publicKeyToken="6595b64144ccf1df"
            language="*"
        />
    </dependentAssembly>
</dependency>
</assembly>

My call to InitCommonControlsEx:我对 InitCommonControlsEx 的调用:

INITCOMMONCONTROLSEX icc;
    icc.dwSize = sizeof(icc);
    icc.dwICC = ICC_STANDARD_CLASSES;
    InitCommonControlsEx(&icc);

First of all the minimum supported client requirement for TaskDialogIndirect is Windows Vista you might also wanna check this out.首先, TaskDialogIndirect支持的最低客户端要求是 Windows Vista,您可能还想检查一下

Your best bet might be XTaskDialog .您最好的选择可能是XTaskDialog This serves as a good emulation of the Vista Task Dialog APIs for down level operating systems including Windows 98, Windows ME, Windows 2000, Windows XP and Windows 2003. This serves as a good emulation of the Vista Task Dialog APIs for down level operating systems including Windows 98, Windows ME, Windows 2000, Windows XP and Windows 2003.

I hope this helps我希望这有帮助

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 带有Qt的ComCtl32.dll版本6 - ComCtl32.dll Version 6 with Qt MFC程序挂起:在Vista上更新KB3059317后损坏的Comctl32.dll? - MFC program hangs: broken Comctl32.dll after update KB3059317 on Vista? 在Visual Studio 2010中将项目从Win32移植到x64平台后加载了错误的ComCtl32.dll - Incorrect ComCtl32.dll is loaded after porting a project from Win32 to x64 platform in Visual Studio 2010 Windows XP 32中的qt5winextras.dll退出时崩溃 - Crash on exit in qt5winextras.dll Windows XP 32 新创建的挂起进程的 EIP 仅在 Windows XP 上失败 - kernel32.dll 映像下的 EIP? - Newly created suspended process's EIP is failing only on Windows XP - EIP under kernel32.dll image? Windows Xp-找不到入口点gettickcount64 kernel32.dll - Windows Xp - entry point gettickcount64 could not be located kernel32.dll Windows xp 32bits d3d9.dll vs Windows 7 64bits d3d9.dll - Windows xp 32bits d3d9.dll vs Windows 7 64bits d3d9.dll 注入一个DLL不能在Windows XP上运行 - injecting a dll is not working on windows XP 使用regsvr32时,在windows dll中找不到入口点 - no entry point found in windows dll while using regsvr32 如果实际导出了“ DLL中找不到普通N”错误,可能是什么原因? - What could be causes of “ordinal N not found in DLL” error if it's actually exported?
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM