我正在尝试恢复一些旧软件:它是在Windows XP上开发的,我正在尝试让它在Windows 10上运行。
但是,该软件依赖于api-ms-win-core-wow64-l1-1-1.dll
,它不合作:依赖项声明api-ms-win-core-wow64-l1-1-1.dll
缺少导入,而Visual Studio的dumpbin
声明它没有依赖项。
我知道Microsoft已经迁移了其功能,没有人应该直接链接到实现,但是有没有办法在Windows 10上获得这个旧软件api-ms-win-core-wow64-l1-1-1.dll
功能?或者,是否有一种可访问的方法可以重写旧.dll
以链接到Microsoft的 Win32 API?
(对于那些需要该文件的人:通过在安装了 wine 的 Linux 机器上运行$ locate api-ms-win-core-wow64-l1-1-1.dll
来api-ms-win-core-wow64-l1-1-1.dll
。
我不确定这是否直接解决了您的问题。 我支持一个Java应用程序,它使用JNI和一些本机Windows库。 我使用依赖项来检查缺少的内容,结果是api-ms-win-core-wow64-l1-1-1.dll(通过WS2_32.dll)。
对我来说,解决方案是从MS安装最新的VC可再发行组件。
从Wine获取库可能不是一个解决方案,以防您寻求在 Linux 环境之外使用它们。(它们是包装器,显然不使用本机Windows程序集)
您可以通过使用从ReactOS
live CD 中提取它们来获得一些成功。但是,您应该知道其中许多是伞式库,如下所述:
伞形库是导出 Win32 API 子集的单个静态链接库。例如,名为 OneCore.lib 的伞式库为所有 Windows 10 设备通用的 Win32 API 子集提供导出。
- https://learn.microsoft.com/en-us/windows/win32/apiindex/windows-umbrella-libraries
- https://learn.microsoft.com/en-us/windows/win32/apiindex/windows-apisets
- https://learn.microsoft.com/en-us/uwp/win32-and-com/win32-apis