Lentitud compilación en CompactFramework

Colapsar
X
  • Filtrar
  • Tiempo
  • Mostrar
Limpiar todos
nuevos mensajes

  • Lentitud compilación en CompactFramework

    Buenas tardes,

    Estoy desarrollando una aplicación para un dispositivo WCE 4.2 con VS2008 y estoy francamente sorprendido con dos características que me dejan poco menos que estupefacto.

    La primera y quizás la más importante (como consecuencia de la segunda) es la desesperante lentitud con la que realiza el compilado, tanto en modo debug como release.

    La segunda es la imposibilidad de modificar el más mínimo contenido del código y continuar depurando, siendo necesario detener el proceso y volver a iniciar la compilación (más desesperante si cabe como consecuencia de la primera).

    He leido en las páginas de Microsoft que la compilación se ralentiza como consecuencia de que el entorno verifica el código para garantizar su compatibilidad con todas las plataformas a las que puede estar destinado, pero que si ya se ha informado una plataforma y un procesador concreto, esta comprobación se puede deactivar editando el fichero :

    c:\windows\microsoft.net\framework\v2.0.50727\micr osoft.compactframework.common.targets

    y modificar la etiqueta:

    Name="PlatformVerificationTask">

    por esta otra:

    Name="PlatformVerificationTask" stat="'$(SkipPlatformVerification)'!='true'">

    No consigo localizar esta etiqueta en el fichero y la verdad es que no me atrevo a escribirla por si acaso estropeo alguna cosa ??

    Mis preguntas son las siguientes:

    Conocéis algún truco para agilizar los tiempos de compilación ?
    Es posible configurar de alguna forma para poder moodificar código sin necesidad de detener el proceso de depuración ?

    IMPRTANTE:

    Todos los métodos, funciones formularios y cualquier otro objeto que se utiliza en contadas ocasiones, lo estoy creando como bibliotecas externas para evitar cargar el proyecto principal.

    El proyecto principal consta ahora mismo de 7 formularios y una clase con el código indispensable para funcionar y los objetos contenidos en bibliotecas de clases se cargan y destruyen solamente cuando es necesario su uso.

    Utilizo CompactFramework 2.0
    WCE 4.2
    C# como lenguaje de desarrollo
    SQLite como base de datos (es muy ligera)


    A pesar de todas estas precauciones, cada compilación tarda aproximadamente entre 5 y 15 minutos. No quiero ni imaginar lo que pasará cuando termine la aplicación (Está ahora mismo a un 70%).


    Agradeceré cualquier orientación sobre este asunto por pequeña que sea.
    Un cordial saludo
    -Acalanto-

    Madrid - España

    Leer detalladamente las normas del foro es una buena forma de comenzar a participar en él. Te llevará unos pocos minutos y el colectivo de usuarios te lo agradecerá. <si no las has leído sigue este enlace>

  • #2
    Re: Lentitud compilación en CompactFramework

    Bueno, pues voy a poner la solución a la incidencia planteada, pues si a algún otro usuario le sucede lo mismo esto es una solución 'milagrosa'...Después de seguir los consejos del departamento de soporte de Microsoft las compilaciones tardan entre 2 y 3 segundos.

    Al principio no me lo podía creer, pero es cierto, las modificaciones que realizo en código se reflejan en el ejecutable...!!Y en tan sólo 3 segundos!!

    Quiero poner de manifiesto el excelente trato recibido y la profesionalidad con la que actua el servicio de soporte de Microsoft, y por encima de esto mi reconocimiento y agradecimiento personal a Michele Brina, Ingeniero de soporte de Microsoft International Agency que ha sido la persona que ha trabajado sin descanso hasta dar con la solución. [Thank you Michele for the effort and interest to resolve my issue. Thank you very much]

    Adjunto email enviado por él con los pasos necesarios para poner a punto la compilación inmediata de aplicacioones para Compact Framework.

    Adjunto también los ficheros que se deben copiar en las carpetas de las plataformas Compact versiones 2.0 y 3.5.

    PD: Esta solución funciona y la he testeado con Microsoft Visual Studio 2008 Professional y CSharp, supongo que funcionará igualmente con otras versiones de VS así cómo con otros lenguajes de desarrollo (VB.NET y C++.NET). Las instrucciones deben seguirse con rigurosidad. No me puedo hacer responsable de desastres creados por no seguir paso-a-paso o no comprender las recomendaciones del mensaje adjunto.


    Hi Leonardo,

    Thanks for your patience on this matter.

    Please let me share with you the results of my work.
    1. After the re-installation of Compact Framework I expected that the behavior of the installation were to replace/reinstall the CompactFramework files.
    2. After some research I found that the CF files were installed by Visual Studio: http://msdn.microsoft.com/en-us/library/ms164312(VS.90).aspx
    3. So, please follow these action in order to reset the Visual Studio’s setting:
    a. run CMD (as Administrator)
    b. type: devenv.exe /ResetSettings
    this action restores the IDE's default settings, optionally resets to the specified VSSettings file.
    c. After that type: devend.exe /ResetSkipPkgs
    This action clears all SkipLoading tags added to VSPackages.
    4. Please go to this directory: “C:\Windows\Microsoft.NET\Framework\v2.0.50727”
    5. Verify if the CompactFramework files are inside this directory
    6. Please go to this directory: “C:\Windows\Microsoft.NET\Framework\v3.5”
    7. Verify if the CompactFramework files are inside this directory

    If the files are located in v3.5 but not in 2.0:
    - Copy/paste all 2.0 files (attached to this email) to the v2.0 directory
    - Copy/paste ONLY Microsoft.CompactFramework.Common.Targets to the v3.5 directory

    If the files are not located in v3.5 and in v2.0:
    - Copy/paste all 2.0 files to the v2.0 directory
    - Copy/paste all 3.5 files to the v3.5 directory

    After these steps go on with these steps:
    a) Right click on My Computer and select Properties
    b) Select the Advanced tab
    c) Press the Environment Variables button
    d) Under User variables for UserName, press the New button
    e) Enter SkipPlatformVerification for the Variable name (this is the name of the property specified in Microsoft.CompactFramework.Common.Targets)
    f) Enter true for the Variable value
    g) Press OK button on the remaining dialogs.

    After all of these, try to re-build your VS project.

    If you have any problems feel free to contact me, I will be glad to answer you.

    Thanks in advance for your answer and best regards,
    Brina Michele
    Un cordial saludo
    -Acalanto-

    Madrid - España

    Leer detalladamente las normas del foro es una buena forma de comenzar a participar en él. Te llevará unos pocos minutos y el colectivo de usuarios te lo agradecerá. <si no las has leído sigue este enlace>

    Comentario


    • #3
      Re: Lentitud compilación en CompactFramework

      Buenísima información, la velocidad es ahora normal, antes era insoportable tener que fumarse un cigarrito entre compilación y compilación. Lo pongo en favoritos para que no se me pierda.
      Gracias.

      Comentario


      • #4
        Re: Lentitud compilación en CompactFramework

        Me alegro mucho que te haya sido útil.
        Un cordial saludo
        -Acalanto-

        Madrid - España

        Leer detalladamente las normas del foro es una buena forma de comenzar a participar en él. Te llevará unos pocos minutos y el colectivo de usuarios te lo agradecerá. <si no las has leído sigue este enlace>

        Comentario

        Trabajando...
        X