【问题标题】:Powershell error when trying to use Set-ItemProperty with DefaultAppPool尝试将 Set-ItemProperty 与 DefaultAppPool 一起使用时出现 Powershell 错误
【发布时间】:2012-03-06 03:02:09
【问题描述】:

我正在尝试执行此处答案中的建议:How do I set the .NET Framework Version when using New-WebAppPool?

并使用命令:

Set-ItemProperty C:\inetpub\temp\appPools\DefaultAppPool managedRuntimeVersion v4.0

但是我得到了这个错误

Set-ItemProperty:属性 System.String managedRuntimeVersion=v4.0 不存在。在 line:1 char:17 + Set-ItemProperty

我认为我正确加载了 Web 管理模块(右键单击任务栏图标并选择“导入系统模块”,然后尝试该 shell 中的命令),我还尝试使用该命令并明确说明参数它仍然发生。 AutoStart 等其他属性也会出现同样的问题。

有人知道我做错了什么吗?

【问题讨论】:

    标签: powershell scripting


    【解决方案1】:

    C:\ 来自文件系统提供程序。 Keith 在您链接的 SO 问题中的回答是使用 IIS 提供程序 IIS:\

    Set-ItemProperty IIS:\AppPools\<pool_name> managedRuntimeVersion v4.0
    

    【讨论】:

    • 嗨,Andy,谢谢你的回复,我已经回复了上面的 manojlds,如果你能看一下就太好了!
    • @Marzipan 您是否先添加了 IIS 管理单元? add-pssnapin WebAdministration
    • 由于某种原因我不能使用 add-pssnapin,但是当我使用 Import-Module 时它可以工作。根据另一个堆栈溢出帖子,我猜这是因为我的 IIS 版本?我现在可以做 cd IIS:\ 之类的了!感谢您的帮助
    • @Marzipan 你有 IIS 7 还是 7.5?
    • @Marzipan 我认为Add-Snapin 适用于 IIS 7。R2 适用于 7.5。我认为这就是你需要使用 import-module 的原因,因为 snapins 现在被认为是遗留的。
    【解决方案2】:

    C:\inetpub\temp\appPools\DefaultAppPool - 你指向的是文件系统。

    使用 IIS 提供程序指向应用程序池。

    类似于IIS:\AppPools\Name

    【讨论】:

    • 我实际上最初尝试过这个,它说“找不到驱动器。名为“IIS”的驱动器不存在。”我最初在看这个网站jonoble.com/blog/2011/10/7/…,他们说你应该能够使用 cd 导航到它,但这对我也不起作用。所以我想我的可能在其他地方,我在 inetpub/temp 中找到了 AppPools 文件夹
    • 当我遇到“找不到驱动器。名为“IIS”的驱动器不存在。”错误,我只需要在脚本开头添加这一行:import-module webadministration
    猜你喜欢
    • 2011-01-11
    • 1970-01-01
    • 2016-10-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-02-23
    相关资源
    最近更新 更多