2009-02-05 14 views
6

Windows Forms uygulamasını ClickOnce kullanarak yayınlarım. Bu uygulamanın genel boyutu dikkate alınarak kurulum oldukça büyük. 15 MB'ın üzerinde bir şey. Yerel olarak oluşturulan uygulamayı sıkıştırırsam 2,5 MB'a sıkıştırılır.ClickOnce uygulanmış uygulama kurulumu sıkıştırılmış olabilir mi?

ClickOnce dağıtımı bir şekilde sıkıştırılabilir mi?

Değilse, transferleri hızlandırmak için IIS sıkıştırmasını kullanan var mı? Bu yardım eder mi?

cevap

10

Bildiğim kadarıyla, montajlarınızı gerçekten elle sıkıştıramazsınız. Ancak, kesinlikle IIS sıkıştırmasını kullanabilirsiniz. Bant genişliği monitörüyle yaptığım testlerden önemli bir fark yaratıyor. Ve bir kez kurulduktan sonra, asla düşünmek zorunda kalmazsınız, otomatik olarak gerçekleşir.

Bunun daha sık konuşulmadığına şaşırdım. Bunu birkaç yıl önce yapmak istediğimde, onun hakkında çok az bilgi bulabilirdim. Ancak, this article, IIS 6.0 çalıştırıyorsanız yapmanız gereken tüm değişiklikleri ayrıntılandırmalıdır. IIS'nin sonraki sürümlerinde bu yönergelerin ne kadar farklı olacağından emin değilim.

2

Bu yönergeler, IIS'nin sonraki sürümlerinde aynıdır. Bu sıkıştırma oldukça hızlı çalışır (dosya değiştirilinceye kadar arka planda ve yalnızca bir kez yapılır)

3

ClickOnce yerleşik bir sıkıştırma desteğine sahip değildir. Ancak, HTTP-sıkıştırmasını web sunucusu düzeyinde kullanabilirsiniz.

IIS7'nin altında sıkıştırmayı etkinleştirmek için şu adımları izleyin:

% windir% \ system32 \ inetsrv \ config \ applicationHost.config (benim yorumları görmek, diğer satırlar varsayılan vardır)

<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> 

Hala çalışmıyor?? Bunu aynı dosyaya ekleyin (varsayılan olarak IIS 7.0, "sık talep edildiğinde" dosyaları sıkıştırmaz)

<serverRuntime frequentHitTimePeriod="00:00:59" /> 
İlgili konular