2014-03-26 92 views
0

我的web應用程序在MVC3中,我使用WIX 3.5將它部署在DEV,QA和PROD框中。該應用程序使用Siteminder身份驗證。 WIX安裝程序安裝的應用程序罰款和網站的作品。然而,當卸載應用程序,維克斯正在刪除從根folder.Here在SiteMinder虛擬目錄是什麼IIS的樣子,WIX安裝程序從根文件夾中刪除Siteminder虛擬目錄

enter image description here

enter image description here

這是SiteMinder的道路上設置上述網絡服務器(如下所示),

enter image description here

圖像在web.config具有所有的SiteMinder相關的配置設置。我的應用程序web.config沒有siteminder相關的條目。換句話說,Siteminder對我的應用程序是透明的。 當WIX安裝應用程序時,它將所有文件都安裝在上圖中我已經變黑的文件夾下。解除安裝後,會刪除應用程序文件夾(在上圖中爲黑色),並保留'asp_client'文件夾和siteminder'web.config'完好無損。該文件夾是這樣的卸載之後,

enter image description here

在IIS網站的虛擬目錄被刪除,BULE箱內完全刪除的文件夾下面的圖片中,

enter image description here

後再次安裝應用程序,WIX安裝應用程序的罰款,但Siteminder虛擬目錄是沒有在哪裏可以找到,

enter image description here

請幫助我找出一種方法,以便WIX不會從IIS中刪除Siteminder虛擬文件夾。

回答

1

這似乎是由WIX卸載程序刪除Siteminder虛擬目錄。根據您的問題,Siteminder設置駐留在網站內(如IIS所示)。這會在0128.iis:WebSite>元素位於< Component>元素內時發生。 <內部的任何組件都由WIX擁有,因此在卸載它時將刪除<組件>下的元素。

你沒有共享維克斯的XML代碼,但我認爲你的< IIS:網站> 元素應該是這樣的,

<iis:WebSite Id='DefaultWebSite' Description='Your-App-Name'> 
    <iis:WebAddress Id='AllUnassigned' Port='8080' /> 
</iis:WebSite> 

和不喜歡這樣,

<Component Id="Your-Component-Ref-Id"> 
    <CreateFolder /> 
    <iis:WebSite Id='DefaultWebSite' Description='Your-App-Name'> 
    <iis:WebAddress Id='AllUnassigned' Port='8080' /> 
    </iis:WebSite> 
</Component> 

當你WIX不會爲您創建網站,它只會複製IIS中已存在的Web站點下的文件和設置(以及Siteminder虛擬目錄)

希望它有幫助。

+0

你有沒有找到任何方法來刪除文件夾??? –

相關問題