2009-02-05 145 views
6

我使用ClickOnce發佈Windows窗體應用程序。考慮到這個應用程序的整體大小,安裝相當大。這是超過15 MB的東西。如果我壓縮本地構建的應用程序,它會被擠壓到2.5 MB。可以將ClickOnce部署的應用程序設置壓縮嗎?

ClickOnce部署是否可以壓縮?

如果沒有,則使用IIS壓縮任何人都可以加快傳輸?這會有幫助嗎?

回答

10

據我所知,你真的不能手動壓縮您的組件。不過,你的絕對是可以使用IIS壓縮。從我用帶寬監視器進行的測試來看,它有很大的不同。一旦建立起來,你就不必考慮它,它只會自動發生。

我很驚訝,這是不是談論較多。幾年前,當我想這樣做時,我幾乎找不到有關它的信息。但是,如果您運行的是IIS 6.0,則this article應詳細說明所需的所有更改。我不確定這些說明對於更高版本的IIS有多少不同。

2

這些說明對於更高版本的IIS是相同的。這種壓縮工作相當快(這是在後臺完成,只有一次,直到文件將被改變)

3

的ClickOnce沒有任何內置的壓縮​​支持。但是您可以在Web服務器級別使用HTTP壓縮。

按照以下步驟下IIS7啓用壓縮:

%WINDIR%\ SYSTEM32 \ INETSRV \設置\的applicationHost.config (見我的意見,其他線路都默認)

<httpCompression directory="%SystemDrive%\inetpub\temp\IIS Temporary Compressed Files"> 
    <scheme name="gzip" dll="%Windir%\system32\inetsrv\gzip.dll" /> 
    <dynamicTypes> 
     <add mimeType="text/*" enabled="true" /> 
     <add mimeType="message/*" enabled="true" /> 
     <add mimeType="application/x-javascript" enabled="true" /> 
     <add mimeType="*/*" enabled="false" /> 
    </dynamicTypes> 
    <staticTypes> 
     <add mimeType="text/*" enabled="true" /> 
     <add mimeType="message/*" enabled="true" /> 
     <add mimeType="application/x-javascript" enabled="true" /> 
     <add mimeType="application/atom+xml" enabled="true" /> 
     <add mimeType="application/xaml+xml" enabled="true" /> 
     <!--HERE! deploy files--> 
     <add mimeType="application/octet-stream" enabled="true" /> 
     <!--HERE! application files--> 
     <add mimeType="application/x-ms-application" enabled="true" /> 
     <!--HERE! manifest files--> 
     <add mimeType="application/x-ms-manifest" enabled="true" /> 
     <add mimeType="*/*" enabled="false" /> 
    </staticTypes> 
</httpCompression> 

還是行不通??此添加到同一個文件(默認情況下,IIS 7.0不壓縮文件,除非他們是「經常被要求」)

<serverRuntime frequentHitTimePeriod="00:00:59" /> 
相關問題