gpt4 book ai didi

c++ - 从 32 位程序启动 64 位进程

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:10:44 24 4
gpt4 key购买 nike

我有一个 32 位程序,我想在 64 位计算机上运行。我正在运行 vssadmin 命令以获取还原点信息并将其保存到文本文件中。现在,它在我的 32 位计算机上运行良好,而我在我 friend 的 64 位计算机上测试它,但它无法运行。

如果我在 64 位系统上运行的 32 位应用程序中使用 system(),它会使用 32 位命令提示符吗?这是我唯一能想到的会阻止它工作的东西,因为我已经从命令提示符手动运行命令并且它工作正常。

如果是这样呢?无论如何强制它使用正确的命令提示符?

最佳答案

在 Linux 和 Windows [我也相信 BSD/MacOS] 中,32 位应用程序可以使用相关的“创建新进程”系统调用来启动 64 位进程 [which system() 在它启动的 shell 中向下做了几层。

唯一的限制是 32 位可执行文件不能使用 64 位共享库(.so 或 .dll),反之亦然。但是一个新进程首先加载一个新的可执行文件,此时进程可以是 32 位或 64 位的,具体取决于可执行文件本身。

关于c++ - 从 32 位程序启动 64 位进程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15552514/

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