2009-02-05 23 views
6

Publico la aplicación Windows Forms usando ClickOnce. La instalación es bastante grande teniendo en cuenta el tamaño total de esta aplicación. Es algo más de 15 MB. Si comprijo una aplicación local, se comprime en 2,5 MB.¿Se puede comprimir la instalación de la aplicación desplegada ClickOnce?

¿Se puede comprimir el despliegue de ClickOnce de alguna manera?

Si no es así, ¿alguien está utilizando la compresión IIS para acelerar las transferencias? ¿Eso ayudaría?

Respuesta

10

Por lo que sé, realmente no puede comprimir manualmente sus ensamblajes. Sin embargo, usted absolutamente puede usar compresión IIS. De mis pruebas con un monitor de ancho de banda, hace una diferencia significativa. Y una vez que está configurado, nunca tienes que pensar en eso, simplemente sucede automáticamente.

Me sorprende que esto no se hable más a menudo. Cuando quise hacer esto hace algunos años, pude encontrar muy poca información al respecto. Sin embargo, this article debe detallar todos los cambios que necesita realizar si está ejecutando IIS 6.0. No estoy seguro de cuán diferentes serán esas instrucciones para las versiones posteriores de IIS.

2

Estas instrucciones son las mismas para la versión posterior de IIS. Esta compresión funciona bastante rápido (se realiza en segundo plano y solo una vez hasta que se cambie el archivo)

3

ClickOnce no tiene ningún soporte de compresión incorporado. Pero puede usar la compresión HTTP en el nivel del servidor web.

Siga estos pasos para habilitar la compresión bajo IIS7:

% windir% \ system32 \ inetsrv \ config \ applicationHost.config (ver mis comentarios, otras líneas son por defecto)

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

¿¿Sigue sin funcionar?? Agregue esto al mismo archivo (de manera predeterminada, IIS 7.0 no comprime los archivos a menos que se soliciten "con frecuencia")

<serverRuntime frequentHitTimePeriod="00:00:59" /> 
Cuestiones relacionadas