您的位置:首页 > 数据库

64位win系统配置32位程序,需要64位32位之间转换

2015-06-12 15:18 1096 查看
系统是64位windows 2003下的php运行配置好PHP之后居然出现错误信息:
%1 is not a valid Win32 application
说这不是一个有效的win32程序..
由于系统是64位的..只好将IIS改为32位的工作模式.
于是找到了这条命令,详情参见微软官方的帮助文档"
Configuring IIS to Run 32-bit Applications on 64-bit Windows (IIS 6.0):经常碰到32位的DLL什么的不能在64位Windows的IIS上调用,在网上找到这篇文章也许能够解决很多问题。总的思路就是先允许IIS支持32位程序,然后再用.Net Framework注册IIS。64位版本的iis并不提供Microsoft OLE DB Provider for Jet驱动支持,所以,如果想在64位windows下使用asp或者asp.net连接access,需要将iis以32位的模式进行连接。以下转载自其他网站的64位系统下32位iis与64位之间转换的方法。IIS6上的做法:1.命令行键入:cscript.exe %SYSTEMDRIVE%\inetpub\adminscripts\adsutil.vbs SET W3SVC/AppPools/Enable32bitAppOnWin64 1即设置IIS6允许32位程序运行在64位机器上2.重新注册.net FrameWorks%SYSTEMROOT%\Microsoft.NET\Framework\v2.0.50727\aspnet_regiis.exe -i3.完成之后,应该会看到多出一个32位的asp.net,如下图:

将其设置为允许,缺点:这样会使整个IIS上的所有站点都以32位兼容方式运行然后再运行一下:%SYSTEMROOT%\Microsoft.NET\Framework\v2.0.50727\aspnet_regiis.exe -i这样就可以跑32位的程序了。ASP.NET 2.0,32 位版本要运行 32 位版本的 ASP.NET 2.0,请按照以下步骤操作:1. 单击“开始”,单击“运行”,键入 cmd,然后单击“确定”。2. 键入以下命令启用 32 位模式:cscript %SYSTEMDRIVE%\inetpub\adminscripts\adsutil.vbs SET W3SVC/AppPools/Enable32bitAppOnWin64 13. 键入以下命令,安装 ASP.NET 2.0(32 位)版本并在 IIS 根目录下安装脚本映射:%SYSTEMROOT%\Microsoft.NET\Framework\v2.0.50727\aspnet_regiis.exe -i4. 确保在 Internet 信息服务管理器的 Web 服务扩展列表中,将 ASP.NET 版本 2.0.40607(32 位)的状态设置为允许。ASP.NET 2.0,64 位版本要运行 64 位版本的 ASP.NET 2.0,请按照以下步骤操作:1. 单击“开始”,单击“运行”,键入 cmd,然后单击“确定”。2. 键入以下命令禁用 32 位模式:cscript %SYSTEMDRIVE%\inetpub\adminscripts\adsutil.vbs SET W3SVC/AppPools/Enable32bitAppOnWin64 03. 键入以下命令,安装 ASP.NET 2.0 版本并在 IIS 根目录下安装脚本映射:%SYSTEMROOT%\Microsoft.NET\Framework64\v2.0.50727\aspnet_regiis.exe -i4. 确保在 Internet 信息服务管理器的 Web 服务扩展列表中,将 ASP.NET 版本 2.0.40607 的状态设置为允许。注意:ASP.NET 2.0 的内部版本可能随当前发行的内部版本的变化而变化。这些步骤适用于内部版本 2.0.40607。 ======================================================== 或者cscript %SYSTEMDRIVE%\inetpub\adminscripts\adsutil.vbs SET W3SVC/AppPools/Enable32bitAppOnWin64 1 //这是一行命令..切勿当成2条语句执行
上面的命令是将将IIS由64位模式修改为32位模式.
更改完模式之后然后按照32位系统配置php即可

如果你要从32位改为64位的.也只需要一个命令
cscript %SYSTEMDRIVE%\inetpub\adminscripts\adsutil.vbs SET W3SVC/AppPools/Enable32bitAppOnWin64 0 //这是一行命令..切勿当成2条语句执行
当然,在更改完之后,PHP是无法运行的了,.NET运行的的话,就需要重新注册一次
32位:%SYSTEMROOT%\Microsoft.NET\Framework\v2.0.40607\aspnet_regiis.exe -i
64位:%SYSTEMROOT%\Microsoft.NET\Framework64\v2.0.40607\aspnet_regiis.exe -i
==========================

64位系统安装32位SQL2005 出警告
安装SQL 2005 出现警告 64位ASP.NET已经注册,需要注册32位

注册32位.net的二个命令:

cscript C:\inetpub\adminscripts\adsutil.vbs SET W3SVC/AppPools/Enable32bitAppOnWin64 1

C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_regiis.exe -i
------------------------------------
安装SQL 2005 出现警告 32位ASP.NET已经注册,需要注册64位

注册64位.net
cscript C:\inetpub\adminscripts\adsutil.vbs SET W3SVC/AppPools/Enable32bitAppOnWin64 0

C:\WINDOWS\Microsoft.NET\Framework64\v2.0.50727\aspnet_regiis.exe -i
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息