IIS 6.0:“将文件夹转换为应用程序”的 WMI 等效项是什么?

发布于 2024-08-25 21:29:44 字数 383 浏览 4 评论 0原文

基本上,假设您需要自动化这些步骤:

  1. 打开 Internet 信息服务。
  2. 找到网站,找到文件夹,右键单击该文件夹并选择属性。
  3. 单击目录文件夹。
  4. 在“应用程序设置”下,单击“创建”按钮。现在应用程序已创建。单击“确定”完成。

点击查看图片演示

我的最终目标是 Powershell,但答案使用 JScript或 VB.NET 或其他都可以。

如果相同的代码适用于在 6.0 兼容模式下运行的 IIS7 应用程序,则会加分。

Basically, imagine you need to automate these steps:

  1. Open Internet Information Services.
  2. Find the web site, find the folder, right click the folder and select properties.
  3. Click the Directory folder.
  4. Under Applications settings, click the Create button. The application is now created. Click OK to finish.

(click for a pictoral walkthru)

My end goal is Powershell, but answers that use JScript or VB.NET or whatever are fine too.

Bonus points if the same code works against an IIS7 application running in 6.0 Compatibility Mode.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

罪歌 2024-09-01 21:29:44

我已经成功地使用了这个VBScript。 YMMV 但至少这是一个起点。

' set a few constants
const CreateNewApplicationPool = true
const UseExistingApplicationPool = false

' Load the Metabase entry if the target directory does exist
Set IISWebDirObj = GetObject("IIS://" & objServer & "/W3SVC/" & objSiteID & "/Root/" & objApp)

if Err.Number <> 0 then
    Err.Clear
    ' Create the Metabase entry if the target directory does NOT exist
    Set IISWebDirRootObj = GetObject("IIS://" & objServer & "/W3SVC/" & objSiteID & "/Root")
    Set IISWebDirObj = IISWebDirRootObj.Create("IISWebDirectory", objApp)
end if

' Assign an existing app pool to the target directory
' Try AppCreate or Appcreate2 to create the app pool at the same time
'  or try using CreateNewApplicationPool for last parameter
IISWebDirObj.AppCreate3 2, objSvcPool, UseExistingApplicationPool

' set the name so it doesn't show up as: Default Application
IISWebDirObj.AppFriendlyName = objSvcPool
IISWebDirObj.SetInfo

' refresh the object in memory so we can change the app pool
IISWebDirObj.GetInfo  
IISWebDirObj.AppPoolId = objSvcPool
IISWebDirObj.SetInfo

I've used this VBScript successfully. YMMV but at least it's a starting point.

' set a few constants
const CreateNewApplicationPool = true
const UseExistingApplicationPool = false

' Load the Metabase entry if the target directory does exist
Set IISWebDirObj = GetObject("IIS://" & objServer & "/W3SVC/" & objSiteID & "/Root/" & objApp)

if Err.Number <> 0 then
    Err.Clear
    ' Create the Metabase entry if the target directory does NOT exist
    Set IISWebDirRootObj = GetObject("IIS://" & objServer & "/W3SVC/" & objSiteID & "/Root")
    Set IISWebDirObj = IISWebDirRootObj.Create("IISWebDirectory", objApp)
end if

' Assign an existing app pool to the target directory
' Try AppCreate or Appcreate2 to create the app pool at the same time
'  or try using CreateNewApplicationPool for last parameter
IISWebDirObj.AppCreate3 2, objSvcPool, UseExistingApplicationPool

' set the name so it doesn't show up as: Default Application
IISWebDirObj.AppFriendlyName = objSvcPool
IISWebDirObj.SetInfo

' refresh the object in memory so we can change the app pool
IISWebDirObj.GetInfo  
IISWebDirObj.AppPoolId = objSvcPool
IISWebDirObj.SetInfo
初见 2024-09-01 21:29:44

检查 IIS6 自动化

编辑添加

根据要求:此处

Check IIS6 Automation.

Edited to add

As requested: here.

鹿童谣 2024-09-01 21:29:44

这并不完全是您正在寻找的 - 他们实际上创建了一个虚拟目录,然后将其设为一个应用程序。但该方法(从 powershell 使用 ADSI)应该适用于 IIS 6/7,并允许您将现有目录转换为应用程序:

http://arcware.net/creating-iis-applications-with-powershell/

AppCreate2(和 SetInfo)调用将虚拟目录转变为应用程序。您也可以在常规目录上调用它。

This isn't exactly what you're looking for - they actually created a virtual directory and then make it an application. But the approach - using ADSI from powershell - should work for IIS 6/7 and allow you to turn an existing directory into an application:

http://arcware.net/creating-iis-applications-with-powershell/

The AppCreate2 (and SetInfo) call is what turns the virtual directory into an application. You could call this on a regular directory, too.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文