none
Setup: System.ArgumentOutOfRangeException: Value of '-2147483648' is not valid for 'Value'

    Pregunta

  • Que tal amigos, vengo con este error, que se despliega al ejecutar el setup de mi app. El cual genero con ClickOnce, durante la publicación no se despliega ningun error o advertencia. Sin embargo al ejecutar el setup, el error se despliega casi al finalizar la instalación, cabe señalar que si le doy continuar, la app se instala con éxito y todo funciona a la perfección, pero me gustaría mitigar este error, ya que la aplicación sera sumamente distribuida y no quiero que represente un "susto/sorpresa" para los usuarios finales. He notado en el stack trace de la excepcion, que no se genera en ninguno de mis ensamblados, es decir es meramente del setup. Adjunto imagen y stack trace completo. Tambien incluyo este hilo del foro de VisualBasic (http://social.msdn.microsoft.com/Forums/en-US/Vsexpressvb/thread/5068df11-f321-4706-acd5-915feeda3b88/), donde se marco como respuesta que el archivo es demasiado grande por lo cual se desborda el progress bar, si es esto cierto ¿existe alguna manera de mitigarlo? o ¿me esta faltando algo antes de realizar el publish de mi app?  Espero puedan ayudarme, de antemano gracias.

    See the end of this message for details on invoking 
    just-in-time (JIT) debugging instead of this dialog box.
    
    ************** Exception Text **************
    System.ArgumentOutOfRangeException: Value of '-2147483648' is not valid for 'Value'. 'Value' should be between 'minimum' and 'maximum'.
    Parameter name: Value
       at System.Windows.Forms.ProgressBar.set_Value(Int32 value)
       at System.Deployment.Application.ProgressPiece.UpdateUI()
       at System.Windows.Forms.Control.InvokeMarshaledCallbackDo(ThreadMethodEntry tme)
       at System.Windows.Forms.Control.InvokeMarshaledCallbackHelper(Object obj)
       at System.Threading.ExecutionContext.runTryCode(Object userData)
       at System.Runtime.CompilerServices.RuntimeHelpers.ExecuteCodeWithGuaranteedCleanup(TryCode code, CleanupCode backoutCode, Object userData)
       at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)
       at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean ignoreSyncCtx)
       at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
       at System.Windows.Forms.Control.InvokeMarshaledCallback(ThreadMethodEntry tme)
       at System.Windows.Forms.Control.InvokeMarshaledCallbacks()
    
    
    ************** Loaded Assemblies **************
    mscorlib
        Assembly Version: 4.0.0.0
        Win32 Version: 4.0.30319.237 (RTMGDR.030319-2300)
        CodeBase: file:///C:/Windows/Microsoft.NET/Framework/v4.0.30319/mscorlib.dll
    ----------------------------------------
    dfsvc
        Assembly Version: 4.0.0.0
        Win32 Version: 4.0.30319.1 (RTMRel.030319-0100)
        CodeBase: file:///C:/Windows/Microsoft.NET/Framework/v4.0.30319/dfsvc.exe
    ----------------------------------------
    System.Deployment
        Assembly Version: 4.0.0.0
        Win32 Version: 4.0.30319.1 (RTMRel.030319-0100)
        CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Deployment/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Deployment.dll
    ----------------------------------------
    System
        Assembly Version: 4.0.0.0
        Win32 Version: 4.0.30319.233 built by: RTMGDR
        CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll
    ----------------------------------------
    System.Windows.Forms
        Assembly Version: 4.0.0.0
        Win32 Version: 4.0.30319.235 built by: RTMGDR
        CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
    ----------------------------------------
    System.Drawing
        Assembly Version: 4.0.0.0
        Win32 Version: 4.0.30319.1 built by: RTMRel
        CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Drawing/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
    ----------------------------------------
    System.Xml
        Assembly Version: 4.0.0.0
        Win32 Version: 4.0.30319.233 built by: RTMGDR
        CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
    ----------------------------------------
    System.Configuration
        Assembly Version: 4.0.0.0
        Win32 Version: 4.0.30319.1 (RTMRel.030319-0100)
        CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Configuration/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll
    ----------------------------------------
    System.Security
        Assembly Version: 4.0.0.0
        Win32 Version: 4.0.30319.1 (RTMRel.030319-0100)
        CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Security/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Security.dll
    ----------------------------------------
    
    ************** JIT Debugging **************
    To enable just-in-time (JIT) debugging, the .config file for this
    application or computer (machine.config) must have the
    jitDebugging value set in the system.windows.forms section.
    The application must also be compiled with debugging
    enabled.
    
    For example:
    
    <configuration>
        <system.windows.forms jitDebugging="true" />
    </configuration>
    
    When JIT debugging is enabled, any unhandled exception
    will be sent to the JIT debugger registered on the computer
    rather than be handled by this dialog box.
    

     

     

    jueves, 13 de octubre de 2011 22:27

Respuestas

  • Al final la solución fue utilizar herramientas de terceros (InstallShield e InstallAnywhere);

    Aunque me agrada mucho trabajar con ClickOnce y ProjectSetup, propios de VS, aun les falta potencia para deployar proyectos que incluyen grandes volumenes de información (como lo es un base de datos [serverless] que vive en el startup de la app o un gran numero de archivos ligados a la app); ojala los proyectos para publicar con los que cuenta VS sigan mejorando como lo ha hecho el propio VS, que en cada versión nos sorprende con fabulosas mejoras.

     

    Saludos.

    • Marcado como respuesta darkneodev jueves, 20 de octubre de 2011 21:18
    jueves, 20 de octubre de 2011 21:18

Todas las respuestas

  • de casualidad tienes un control progress bar en algun formulario ?

    porque segun veo el fallo se produce cuando se quiere asignar un valor a este control

    System.Windows.Forms.ProgressBar.set_Value(Int32 value)

    si te finas el mensaje lo deja muy claro "'Value' should be between 'minimum' and 'maximum'."

    el valor esta tomando un valor que esta fuera de lo permitido

     

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    jueves, 13 de octubre de 2011 23:50
  • Que tal leandro, gracias por responder, no de hecho en ninguno de los modulos de la aplicación hago uso de un progress bar, el error es lanzado antes de que la aplicación se encuentre en ejecución, es decir durante el proceso de instalación del setup...
    viernes, 14 de octubre de 2011 2:10
  • no tienes de casualidad desarrollado ningun Custom Action que uses el instador

    digo que pasa si evitas el instalador y llevas el desarrollo a la pc donde quieres ejecutar la aplciacion y haces un deploy manual, funciona sin problemas ?

    si funciona prueba creando un nuevo proyecto de instalacion simple y valida que con este no uceda lo mismo

     

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    viernes, 14 de octubre de 2011 2:34
  • Buen día Leandro, fijate que no, no realizo ningun Custom Action durante la instalación, y en efecto si me llevo el deploy manual de la app a otro pc, funciona sin problema; incluso el error ocurre cuando ejecuto el setup en Windows Vista y Windows 7. el desborde ocurre en el progress bar del setup, tu sabes si lo que mencionan en este hilo: http://social.msdn.microsoft.com/Forums/en-US/Vsexpressvb/thread/5068df11-f321-4706-acd5-915feeda3b88/ es cierto?? es decir que el instalador es demasiado grande ??

    En cuanto a crear un proyecto de instalación simple no se si te refieras a uno de este tipo:

    tambien habia pensado en uno de este tipo, pero descarte la idea porque desconozco si en este tipo de setup es posible agregar los prerrequisitos de mi app (NET Framework 3.5 y Windows Installer) ya que mediante clickOnce ya tengo todo configurado para que al publicar se exporten tambien el windows installer y el net framework, para que durante la instalación si estos no estan instalados los obtenga de la misma ruta donde se aloja el setup, es decir la opción: "Download prerequisites from the same location as my application" en "prerequisites"...

    Espero puedas seguir orientandome, gracias por tus respuestas...


    • Editado darkneodev viernes, 14 de octubre de 2011 14:36
    viernes, 14 de octubre de 2011 14:35
  • desconozco si en este tipo de setup es posible agregar los prerrequisitos de mi app (NET Framework 3.5

    si puedes definirles prerrequisitos imagen


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    viernes, 14 de octubre de 2011 14:57
  • Ah ok, realizo algunas pruebas y te aviso el resultado. Gracias leandro.
    viernes, 14 de octubre de 2011 15:24
  • Que tal buenas tardes, anule la marca como respuesta porque la que marcaron no resolvía el problema inicial, leandro la planteo como otra opción para generar el setup de la aplicación. Ya lo realice utilizando project setup; pero existe un problema al construir el archivo de instalación, la aplicación incluye muchos archivos, y cuando doy "Build" al proyecto de instalación, inicia las tareas pero arroja un error, donde me dice que no puede localizar el archivo "tal" seguido de un 'Espacio de almacenamiento insuficiente para completar esta operación.', ya he  notado que cuando intento publicar el instalador, el visual studio consume toda la memoria y al llegar al tope es cuando arroja el error mencionado; Supongo (logicamente) que se debe a la gran cantidad de archivos incluidos en el proyecto, y de igual forma en la aplicacion va embebida la base de datos que consume, así que mi pregunta sigue siendo, existe un limite de tamaño para el cual VS ya no es capaz de generar el setup de la app correctamente ?? que puedo realizar en este caso ?? Mediante clickOnce el setup generar el error descrito inicialmente en este hilo, y mediante Project Setup arroja el error mencionado en este mensaje..

    Cabe señalar que cuando descarto todos estos archivos, al darle "Build" a mi "Project Setup" se genera todo exitosamente, e instalo sin ningun problema mi app; y al incluir nuevamente los archivos y BD vuelve el problema...

    Espero puedan orientarme.

    Nota: tambien ya he intentado generar el setup con la opción de Cabinet Files, imagine que generando partes del empaquetado pudiera tener otro resultado, pero resulto en el mismo error.

    Gracias...

     


    • Editado darkneodev lunes, 17 de octubre de 2011 21:53
    lunes, 17 de octubre de 2011 21:52
  • Al final la solución fue utilizar herramientas de terceros (InstallShield e InstallAnywhere);

    Aunque me agrada mucho trabajar con ClickOnce y ProjectSetup, propios de VS, aun les falta potencia para deployar proyectos que incluyen grandes volumenes de información (como lo es un base de datos [serverless] que vive en el startup de la app o un gran numero de archivos ligados a la app); ojala los proyectos para publicar con los que cuenta VS sigan mejorando como lo ha hecho el propio VS, que en cada versión nos sorprende con fabulosas mejoras.

     

    Saludos.

    • Marcado como respuesta darkneodev jueves, 20 de octubre de 2011 21:18
    jueves, 20 de octubre de 2011 21:18