所有Windows平台上的可移植性都是32位和64位

时间:2015-06-13 22:42:26

标签: c++ windows portability

在便携性方面,我应该关心的是32位和64位的所有Windows平台? 更重要的是,如果有必要使用Windows API,我应该有什么好习惯?

1 个答案:

答案 0 :(得分:0)

不了解C ++,但有一个简单而直接的解决方案。 将32位和64位版本放在目录中。并将此bat文件放在那里。

IF "%PROCESSOR_ARCHITECTURE%"=="AMD64" GOTO x64
IF "%PROCESSOR_ARCHITEW6432%"=="AMD64" GOTO x64
IF "%PROCESSOR_ARCHITECTURE%"=="x86" GOTO x86
:x86
START "" build32.exe %1
GOTO arcselend
:x64
START "" build64.exe %1
:arcselend
exit

即使您想在执行后执行操作(程序退出后)也欢迎

IF "%PROCESSOR_ARCHITECTURE%"=="AMD64" GOTO x64
IF "%PROCESSOR_ARCHITEW6432%"=="AMD64" GOTO x64
IF "%PROCESSOR_ARCHITECTURE%"=="x86" GOTO x86
:x86
START "" /W build32.exe %1
GOTO arcselend
:x64
START "" /W build64.exe %1
:arcselend

:: Do something here like
DEL /F/Q "-PATH-\sometempfile.tmp" >NUL 2>NUL

exit

你不想要蝙蝠文件吗? Here我们有一个bat 2 exe编译器,占用空间极小。在设置中,您可以定义以使用提升的权限启动应用程序。

注意:使用相对路径(确定),如果您对路径有任何问题,请在此处写入。还有另一个简单的解决方案。