如何在升级中从InstallShield中删除基于IIS的组件?

时间:2013-03-05 10:34:33

标签: installshield installshield-2011

尝试按照建议here使用InstallShield创建现有Web应用程序的主要升级时,我创建了一个新的应用程序池,但无法创建新的IIS应用程序。但是,当新安装创建新池时,它不会更改现有虚拟目录以使用新池。日志说虚拟目录已经存在,并将其留在那里。

是否可以让安装更改现有组件,或者只是如何删除虚拟目录组件,因为删除文件表需要一个目录?

由于

1 个答案:

答案 0 :(得分:0)

通过

结束实现这一目标
  1. 使用字符串编辑器表中的网站名称值创建一个名为WEBSITENAME的属性(这是为了重用)
  2. 创建了一个VBscript自定义操作,在 RemoveFolders 之后运行,条件如下: IIS_VERSION< =“#6”并且未安装
  3. 代码是:

    Dim objWebServer
    Dim objVirtualDir
    Dim strAppName
    Dim intASPSessionTimeout
    Dim SubVirtDir
    On Error Resume Next
        CreateApplication = ERROR_SUCCESS
        strAppName = Session.Property("WEBSITENAME")    
        SubVirtDir = "/" + strAppName
        intASPSessionTimeout = 120
        Set objWebServer = GetObject("IIS://localhost/W3SVC/1/Root")
        'Delete the Virtual subdirectory
        Set objVirtualDir = objWebServer.Delete("IISWebVirtualDir", SubVirtDir) 
        Set objVirtualDir = objWebServer.Delete("IISWebVirtualDir", strAppName) 
    

    这就是我需要做的。现在我需要找出类似于有条件的Enable32bitAppOnWin64的方法!