禁止32位安装包运行在64位操作系统上

Windows installer提供了一个“Msix64”属性帮我们检测当前系统是32位还是64位。

The Msix64 property is defined only if running on an x64 processor.

当检测到是64位系统时可以禁止继续运行安装包,在Wix中我们可以添加一个Condition:

<Condition Message="This insatller should be run on a 32-bit operation system. 64-bit operating system is not supported.">
  <![CDATA[Not Msix64]]>
</Condition>

但是注意这个属性需要Windows Installer 3.1以上版本的支持,也就是说要求操作系统的Window Installer版本至少是3.1. 在安装包中我们可以指定安装包要求的Windows Installer的最低版本:

<Package InstallerVersion="310" Compressed="yes" />

*InstallerVersion = Windows Installer版本 * 100, 所以310表示3.1.

相关链接:

禁止32位安装包运行在64位操作系统上

时间: 2024-10-10 11:35:23

禁止32位安装包运行在64位操作系统上的相关文章

在64位操作系统上使用FlashDevelop的Debug功能

最近用上了FlashDevelop.与Flash Builder比起来,它确实优点很多:小巧,快速,灵活的定制功能,免费且开源. 使用FlashDevelop开发AS/Flex/AIR程序的时候,可以使用Flex SDK来编译和调试.Flex SDK使用JAVA写成,需要系统中安装JAVA虚拟机(JVM).而我的系统中已经安装了64位的JAVA虚拟机. 在调试的时候,FlashDevelop报告了下面的错误. Debugger startup error: System.BadImageForm

windows7 64位操作系统上使vs2010和vs2013能够并存的处理方法

之前机子上是只安装有vs2010,后来在没有卸载vs2010的情况下想装个vs2013,使vs2010与vs2013同时并存在windows764位机上.需要依次安装cn_visual_studio_ultimate_2013_x86_dvd_3009109.iso.vs2013.2.iso和vc_mbcsmfc.exe.在安装过程中遇到的问题有: (1).在用DAEMON Tools Lite工具装载cn_visual_studio_ultimate_2013_x86_dvd_3009109.

判断是64位操作系统还是32位系统

1.IsWow64Process 确定指定进程是否运行在64位操作系统的32环境(Wow64)下. 语法 BOOL WINAPI IsWow64Process( __in HANDLE hProcess, __out PBOOL Wow64Process ); 参数 hProcess 进程句柄.该句柄必须具有PROCESS_QUERY_INFORMATION 或者 PROCESS_QUERY_LIMITED_INFORMATION 访问权限 Wow64Process 指向一个bool值, 如果该

WIN7 64位操作系统 无法找到Access驱动

为了更充分的利用硬件资源,我想很多人都开使用64位操作系统了,同时你可以也发现了在64位操作系统上ODBC的驱动找不到了,所以ODBC的东西都没法用了. 因为2007以前版本的Office只有32位版本,所以我们不能在64位系统上使用ODBC.使用Autodesk 64位产品的用户,包括64位的MapGuide Enterpr和 Map3D,肯定也正为这个问题深感苦恼. 解决办法:打开“C:\Windows\SysWOW64”目录,查找“odbcad32.exe”文件,然后双击,在这里就可以设置

转 32位64位操作系统基本数据类型字节大小

http://blog.csdn.net/huyisu/article/details/17604983 int型字长问题: ① C/C++规定int字长和机器字长相同: ② 操作系统字长和机器字长未必一致: ③ 编译器根据操作系统字长来定义int字长: 由上面三点可知,在一些没有操作系统的嵌入式计算机系统上,int的长度与处理器字长一致:有操作 系统时,操作系统的字长与处理器的字长不一定一致,此时编译器根据操作系统的字长来定义int字长:" 比如你在64位机器上运行DOS16系统,那么所有fo

32位64位操作系统基本数据类型字节大小

nt型字长问题: ① C/C++规定int字长和机器字长相同: ② 操作系统字长和机器字长未必一致: ③ 编译器根据操作系统字长来定义int字长: 由上面三点可知,在一些没有操作系统的嵌入式计算机系统上,int的长度与处理器字长一致:有操作 系统时,操作系统的字长与处理器的字长不一定一致,此时编译器根据操作系统的字长来定义int字长:" 比如你在64位机器上运行DOS16系统,那么所有for dos16的C/C++编译器中int都是16位的;在64位机器上 运行win32系统,那么所有for w

解决32位plsql客户端连接不64位Oracle11g上数据库

一.解决方案 因为本人安装的是64位的Oracle,plsql 是32位的故连接不上.网上有方法能连接. 1. 文件下载 下载PLSQL_Developer地址 http://pan.baidu.com/share/link?shareid=3768883331&uk=3557941237 下载instantclient-basic-win32-10.2.0.5地址: http://pan.baidu.com/share/link?shareid=3782452820&uk=3557941

在32位、64位操作系统下各数据类型所占的字节数

点击打开链接 在32位.64位系统当中,唯一改变的是指针的长度;在32位系统当中是4个字节.64位则是8个字节.所谓的32位.64位,这个指的是寄存器的位宽. 32位平台下结果: 64位平台下结果: 一.下面几点是值得大家注意的: 1.关于 int 的取值范围,缺省的int数值范围是由编译器设计者决定的,通常都是机器最为自然高效的位数.甚至,我们在32位的机器上,前提没有什么指令可以高效的的处理更短的整型值,我们可以将short.int.long都设置成32位. 2.浮点数在缺省的情况下 表示的

32位plsql链接oralce数据库64位报错

解决方案:plsql不支持64位,下载32位客户端文件 接着用免安装的plsql连接数据库试了试,发现没有连接的权限可选,如图 直接输入用户名.密码和数据库名,提示如下: 说明plsql是不可以直接连接64位oracle数据库,只能连接32位.既然都安装了64位oracle,可不能卸载了再装32位啊,那如何连接64位呢,就只能借助32位客户端实现了.具体方法在此与大家分享一下: 1.首先下载32位的oracle客户端 下载地址:http://www.oracle.com/technetwork/