且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

在64位环境中加载32位进程

更新时间:2021-09-20 02:31:33


现在我无法启动来自CHM文件的32位应用程序,因为64位进程无法加载32位进程

And now I cannot launch the 32 bit application from the CHM file, because a 64-bit process cannot load a 32-bit process

不确定你的意思通过'加载32位进程',但32位进程肯定可以创建一个64位进程。例如,如果我有一个32位应用程序MyApp32.exe,它绝对可以启动一个64位应用程序MyApp64.exe。

Not sure what you mean by 'load a 32-bit process', but a 32-bit process can most certainly create a 64-bit process. For example, if I have MyApp32.exe, a 32-bit application, it can absolutely launch MyApp64.exe, a 64-bit application.

当你读到有关不兼容性的内容时在32位和64位代码之间,它指的是加载64位DLL的32位应用程序,反之亦然。

When you read about incompatibilities between 32- and 64-bit code, it refers to a 32-bit application loading a 64-bit DLL, or vice versa.

我怀疑你的问题实际上是您用于启动应用程序的路径正在与WOW64文件系统重定向相冲突。在此方案中,访问C:\ Windows \ System32的32位应用程序实际上被重定向到C:\ Windows \ SysWow64 \ System32。你可以阅读更多这里

I suspect your problem is actually the path you are using to launch the application is running afoul of the WOW64 file system redirection. In this scheme, 32-bit applications that access C:\Windows\System32, are actually redirected to C:\Windows\SysWow64\System32. You can read about that more here

如果这不起作用,有关如何启动此32位进程以及它在文件系统中的位置的更多信息可能会增加一些清晰度。

If that doesn't work, more information about how you are launching this 32-bit process and where it is located on the file system might add some clarity.