大佬教程收集整理的这篇文章主要介绍了从MINGW启动时运行System32程序而不是SysWOW64,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我试图从一个sHell脚本文件创buildEXE文件我从minggw启动(从git bash使用)
我的问题是当我运行这些命令:
C:/Windows/system32/iexpress.exe //NC:\git\install_64bitWindows.SED C:/Windows/SysWOW64/iexpress.exe //NC:\git\Install_32bitWindows.SED
他们总是最终调用SysWOW64中的makecab(创build一个32位.exe)是否有无论如何,我从system32启动一个新的cmd为我能够使我的64位.exe?
在bash脚本中出现Standard_in错误
自动将所有环境variables从一个sHell转移到另一个sHell
从空闲环境访问X11显示(bash)
inputrc文件无法加载
比较后续行的不同列以合并范围
有一个命令列出所有系统调用名称和数字在Linux上的bash?
就像将所有的命令行参数存储到一个bash脚本中一样
Bash,执行命令,但继续交互式会话
如何用awk合并2个表
因为您正在运行32位可执行文件中的命令,所以操作系统会自动将System32重定向到SysWOW64,原因是与旧(早于64位)可执行文件兼容(这样,它们将从正确的路径加载它们的依赖项)。
要绕过重定向,可以从%windir%sysnative运行可执行文件,该文件将自动重定向到“真实”System32:
%windir%sysnativeiexpress.exe //NC:\git\install_64bitWindows.SED
有关完整说明,请参阅: http : //www.tipandtrick.net/how-to-suppress-and-bypass-system32-file-system-redirect-to-syswow64-folder-with-sysnative/
如果您还想运行32位可执行文件,请使用
%windir%system32iexpress.exe //NC:\git\install_32bitWindows.SED
因为这将与32位和64位操作系统环境兼容。
要检测您是否在32位或64位操作系统上,请检查(具有误导性的名称)环境变量PROCESSOR_ARCHITECTURE 。 对于32位,将是“ x86 ”,对于64位OS将是“ AMD64 ”。
把它放在一起:
对于Windows CMD脚本:
if "%PROCESSOR_ARCHITECTURE%"=="x86" ( %windir%system32iexpress.exe //NC:giTinstall_32bitWindows.SED ) else ( %windir%sysnativeiexpress.exe //NC:giTinstall_64bitWindows.SED )
对于一个bash脚本:
if [ "$PROCESSOR_ARCHITECTURE" = "x86" ]; then $WINDIR/system32/iexpress.exe //NC:\git\install_32bitWindows.SED else $WINDIR/sysnative/iexpress.exe //NC:\git\install_64bitWindows.SED fi
(请注意,在bash中,即使在Windows中,变量名也是区分大小写的)。
如果你调用它:
C:/Windows/sysnative/iexpress.exe //NC:\git\install_64bitWindows.SED
它应该建立使用64位版本的iexpress。
以上是大佬教程为你收集整理的从MINGW启动时运行System32程序而不是SysWOW64全部内容,希望文章能够帮你解决从MINGW启动时运行System32程序而不是SysWOW64所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。