IIS6.0下ASP的新增功能(二)

王朝厨房·作者佚名  2007-01-05
宽屏版  字体: |||超大  

下列示例设置默认网站应用程序 (W3SVC/1/ROOT) 在 MTA 中执行:

On Error Resume Next

set providerObj = GetObject("winmgmts://MyMachine/root/MicrosoftIISv2")

' 获得对名为“默认网站”的 ASP 应用程序的引用

set IIsWebVirtualDirSettingObj = providerObj.get("IIsWebVirtualDirSetting='W3SVC/1/ROOT'")

WScript.Echo "Before: AspExecuteInMTA = " & IIsWebVirtualDirSettingObj.AspExecuteInMTA

' 将 ASP 应用程序设置为在 MTA 中执行

IIsWebVirtualDirSettingObj.AspExecuteInMTA = 1

IIsWebVirtualDirSettingObj.Put_()

WScript.Echo "After: AspExecuteInMTA = " & IIsWebVirtualDirSettingObj.AspExecuteInMTA

并排集合:

并排 (SxS) 集合允许 ASP 应用程序指定要使用哪个版本的系统 DLL 或传统 COM 组件,例如 MDAC、MFS、MSVCRT、MSXML 等。例如,如果您的 ASP 应用程序依赖 MSXML 2.0 版,则可以确保即使是在服务器上应用了 Service Pack 之后,您的应用程序仍使用 MSXML 2.0 版。任何新版本的 MSXML 仍安装在计算机上,但是保留 2.0 版且由应用程序使用。配置 SxS 程序集要求您知道 DLL 的路径,且 COM+ 清单文件存在于每个需要使用 DLL 的虚拟目录中。COM+ 清单是包含有关 DLL 安装位置信息的 XML 文件。IIS 不验证清单是否存在。清单的外观类似于下面的文件摘录:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>

<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">

<assemblyIdentity publicKeyToken="75e377300ab7b886" type="win32" name="Test4Dir" version="1.0.0.0" processorArchitecture="x86"/>

<file name="DirComp.dll" hash="35ca6f27b11ed948ac6e50b75566355f0991d5d9" hashalg="SHA1">

<comClass clsid="{6C6CC20E-0F85-49C0-A14D-D09102BD7CDC}" progid="DirComp.PathInfo" threadingModel="apartment"/>

<typelib tlbid="{AA56D6B8-9ADB-415D-9E10-16DD68447319}" version="1.0" helpdir=""/>

</file>

</assembly>

您可以在 IIS 端以编程方式或者通过使用 IIS 管理器来启用并排集合。

在 IIS 端使用 IIS 管理器启用并排集合

在 IIS 管理器中,右键单击网站或虚拟目录,然后单击“属性”。

单击“虚拟目录”选项卡,然后单击“配置”。

如果配置按钮不可用,那么原因是还没有为该虚拟目录创建应用程序。单击“创建”以创建一个应用程序。

在“应用程序配置”对话框中,单击“选项”选项卡。

选中“启用并排集合”复选框。

在“清单文件名”框中,键入 COM+ 清单文件的名称。

单击“确定”两次。

要通过编程启用并排集合,请设置 AspAppServiceFlags 配置数据库属性的 AspEnableSxs 标志。同时将 AspSxsName 配置数据库属性设置为 COM+ 清单的名称。在应用程序级别设置这两个配置数据库属性。

要点 即使该功能可在应用程序级别进行配置,在任何一个应用程序池中都只能使用一个版本的系统 DLL。例如,如果应用程序 App1 使用 MDAC 2.5 版,应用程序 App2 使用 MDAC 2.4 版,则 App1 和 App2 不应位于同一个应用程序池中。如果它们位于同一个应用程序池中,则首先加载的应用程序加载与之相对应的 MDAC 版本,在卸载这些应用程序之前,其他应用程序只能被迫使用该版本。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
© 2005- 王朝网络 版权所有