开发者

How to modify IIS handler mapping permissions via Wix or a Custom Action

开发者 https://www.devze.com 2022-12-22 22:20 出处:网络
I\'m using Wix to create an installer for a Silverlight application. When I install the application the virtual directory that has been created has the execute permission checked for the *.dll handle

I'm using Wix to create an installer for a Silverlight application.

When I install the application the virtual directory that has been created has the execute permission checked for the *.dll handler mapping (IIS 7 > Web site > VDir > Handler Mappings > *.dll > Edit Feature Permissions > Execute).

When I browse to the application it cannot download its satellite assemblies in ClientBin. If I uncheck the execute permission in IIS the handler becomes disabled and the app开发者_开发技巧lication now works.

I don't want to have to do this manually. Does anybody know how to modify the handler mapping permissions in Wix or a Custom Action?

Thanks


You can do this in a VBScript Custom Action.

strComputer = "."
Set objWMIService = GetObject _
    ("winmgmts:{authenticationLevel=pktPrivacy}\\" _
        & strComputer & "\root\microsoftiisv2")

vdir = "W3SVC/1/ROOT"

Set colItems = objWMIService.ExecQuery _
    ("Select * from IIsWebVirtualDirSetting WHERE Name = '" & vdir & "'")

For Each objItem in colItems
    ''WScript.Echo objItem.AppRoot
    objItem.AccessExecute = "False"
    objItem.Put_()
Next


According to this post, it is not possible directly from WiX. However you could write a managed custom action and use the IIS7 .net API to edit the mapping.

0

精彩评论

暂无评论...
验证码 换一张
取 消