Pregunta

Mi aplicación tiene un marco .NET objetivo de 3.0.

Tengo una PC con una nueva instalación de Windows XP SP3. A continuación, instalé .NET Framework 4.0 completo.

Cuando intento ejecutar mi aplicación de despliegue de clickonce, obtengo el "No se pudo cargar el tiempo de ejecución" error:

[9/9/2011 11:39:53 AM] System.Runtime.InteropServices.COMException
    - Failed to load the runtime. (Exception from HRESULT: 0x80131700)
    - Source: System.Deployment
    - Stack trace:
        at System.Deployment.Application.NativeMethods.IClrMetaHostPolicy.GetRequestedRuntime(MetaHostPolicyFlags policyFlags, String binaryPath, IStream configStream, StringBuilder version, Int32& versionLength, StringBuilder imageVersion, Int32& imageVersionLength, Int32& pdwConfigFlags, Guid interfaceId)
        at System.Deployment.Application.NativeMethods.GetAssemblyCacheInterface(String CLRVersionString, Boolean FetchRuntimeHost, CCorRuntimeHost& RuntimeHost)
        at System.Deployment.Application.PlatformDetector.VerifyPlatformDependencies(AssemblyManifest appManifest, AssemblyManifest deployManifest, String tempDir)
        at System.Deployment.Application.ApplicationActivator.DownloadApplication(SubscriptionState subState, ActivationDescription actDesc, Int64 transactionId, TempDirectory& downloadTemp)
        at System.Deployment.Application.ApplicationActivator.InstallApplication(SubscriptionState& subState, ActivationDescription actDesc)
        at System.Deployment.Application.ApplicationActivator.PerformDeploymentActivation(Uri activationUri, Boolean isShortcut, String textualSubId, String deploymentProviderUrlFromExtension, BrowserSettings browserSettings, String& errorPageUrl)
        at System.Deployment.Application.ApplicationActivator.ActivateDeploymentWorker(Object state)

Tengo entendido que las aplicaciones dirigidas a .NET 3.0 deberían funcionar en máquinas que tienen .NET 4.0 instaladas. Que esta causando este error? ¿Debo instalar .NET Framework 3.5 SP1 en máquinas Windows XP?

¿Fue útil?

Solución

Sí, instalaría .NET Framework 3.5 e intentaría nuevamente, si no funciona, instalaría el 3.0 ( Microsoft .net Framework 3.0 Paquete redistribuible ).

.NET 3.5 SP1 y .NET 4 están presentes en las máquinas a las que implementamos nuestras aplicaciones.

Editar:

También revise estas preguntas:

¿Con qué versión de .NET Framework debo enviar? 2, 3, 3.5?

¿Se requiere .NET Framework 2.0 si 3.5 está instalado?

Otros consejos

Como mencionó Davide Piras, debe instalar .NET 3.0. La razón por la que debe hacer es que .NET 4 no es un superconjunto de dependencia de las bibliotecas 3.5/3.0/2.0.

.NET 3.5 es 3.0 bibliotecas más algunas adicionales. .Net 3.0 son las bibliotecas 2.0 más algunas adicionales

Sin embargo, .NET 4 es un conjunto completamente nuevo de bibliotecas que existen en paralelo a las 2.0/3.0/3.5. Creo que este es el resultado del .NET 4 utilizando un nuevo tiempo de ejecución CLR que 2.0/3.0/3.5. El 2.0/3.0/3.5 usa el mismo tiempo de ejecución, por lo tanto, cada nueva versión requería la instalación de las versiones anteriores.

Es una Composición, así que diría que tal vez un componente no se establece correctamente.

Consulte las propiedades de su proyecto en la pestaña Publicar. En los archivos de aplicación, verifique todos los archivos y asegúrese de que todo lo que necesita está marcado como incluido.

Allí, también puede pedirle a la aplicación que descargue los componentes requeridos (como el marco adecuado).

Tal mensaje de error engañoso me sucedió en el pasado. También puede ser el marco como dice la otra respuesta.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top