环境:
Windows Server 2003 R2企业版64位,SP2
据推测安装了.NET框架(2.0 SP2,3.0 SP2,3.5 SP1)
我说“应该”,因为它们在“添加/删除程序”下列出已安装。我不确定正确是否已安装,因为“ASP.NET”选项卡未添加到IIS中的任何站点。
在“IIS Web服务扩展”部分中,我同时拥有“ASP.NET v2.0.50727”(允许)和“ASP.NET v2.0.50727(32位)”(禁止)。
相关网站已启用脚本执行。
问题:
我创建了一个超级简单的ASP.NET / C#网站:Default.aspx,标签为id =“Label1”,代码隐藏为:Label1.text = "Hello World";
,我得到的错误是:< / p>
%1不是有效的Win32应用程序。
答案 0 :(得分:9)
你试过跑步吗?
aspnet_regiis -i
从命令行?
答案 1 :(得分:5)
同时检查您的应用程序池。在64位环境中,您可能需要在“高级设置”中设置“启用32位应用程序”。
答案 2 :(得分:2)
我有“%1不是有效的Win32应用程序”。错误消息,因为我的PATH环境变量也搞砸了。它包含来自python安装的垃圾:
%PYTHON_HOME%;
%PYTHON_HOME%\Scripts;
答案 3 :(得分:1)
我在Windows Server 2008 64位上遇到类似的IIS7错误。
融合日志在这里没有任何帮助,事实证明,在我的情况下,有一个第三方程序集引用了32位仅的程序集或本机dll。 (确切地说是Xceed)
要查找64位运行时正在加载哪个程序集:
请记住,无论应用程序中的实际含义如何,都会加载放在bin目录中的所有程序集。
答案 4 :(得分:1)
我有这个问题。我将.EXE部署到不支持.NET 4.5的Windows 2003。我使用.NET 4重建了程序并且它运行良好。