2009-10-30 81 views
12

He estado usando Visual Studio 2008 bastante largo pero últimamente estoy recibiendo este mensaje cuando estoy desarrollando una aplicación en C#:Common Language Runtime detecta un programa no válido en Visual Studio

tiempo de ejecución de lenguaje común detectado un inválido programa

Esto sucede cuando intento ingresar a las propiedades de un componente (texto enmascarado propiedades del cuadro, caja de herramientas, propiedad, etc.). Pero realmente se convirtió en un problema cuando traté de lanzar otra solución que descargué del programa de Microsoft de 5 estrellas del Desarrollador y no me permitió lanzarla en absoluto y acabo de tener el mismo problema ...

I busqué la respuesta en google pero solo obtuve algunas pistas sobre personas que tienen el mismo error impreciso pero en diferentes situaciones como en ASP.NET

Agradeceria cualquier ayuda con este problema ... :(No quiero volver a instalar VS, que será mi último recurso ...

actualización:

Nunca imaginé cuál era el problema, así que instalé una máquina virtual con Windows XP, allí solo tengo Visual Studio y Netbeans.

+0

Compruebe las referencias del proyecto, que trabajaron para mí –

Respuesta

5

¿Puede reproducir el problema en una nueva solución sin hacer referencia a ningún conjunto adicional? Si es así, creo que volver a instalarlo sería tu mejor opción. ¡Lo siento!

+0

He intentado lo siguiente: 1) vuelto a instalar el Framework 3.5 .Net // No funcionó 2) vuelto a instalar el Visual Studio 2008 Standard Edition // No funcionó :(... sigue teniendo el mismo mensaje feo: "Common Language Runtime detectó un programa no válido", el problema es que no hay información adicional que pueda darme una pista sobre el problema ... Thx for the time – Jimmy

+0

Por cierto, estoy obteniendo esto en Vista 32 bits SP 2 en un Core Quad ... No sé si esto podría ayudar – Jimmy

+0

FYI: Recibí el mismo mensaje mientras jugueteaba con Reflector + Reflexil. En mi caso, el significado era el He destruido el Dll de alguna manera, y Visual Studio ya no puede usarlo. así que supongo que uno (o más) de tus Dlls importantes fue destruido ... – itsho

0

Un colega mío tenía un problema en el que su caja de herramientas terminaba corrupta. Intente abrir la caja de herramientas, haga clic con el botón derecho y elija 'Restablecer caja de herramientas'. Nunca sabes.

5

Nunca encontré una solución para este problema en línea. Pero lo que lo solucionó fue utilizar la opción 'Solución limpia' en Visual Studio.

Parece que VS se había vuelto un poco "sucio", de alguna manera.

1

Pruebe usar "Solución limpia" antes de seguir la guía de solución de problemas de Microsoft.

4

Sólo tiene que borrar archivos ASP.NET temparory de

C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files 

y luego ejecutar la solución en asp.net.Now se ejecutará correctamente.

1

Podría ser el uso de un ensamblado al que se hace referencia que tiene un objetivo de CPU diferente de x86 o x64 al especificado en la solución abierta en Visual Studio.

Si puede recompilar el conjunto, establezca el objetivo del conjunto al que se hace referencia en el mismo tipo de CPU que el de la solución abierta para solucionarlo.

Mi circunstancia se estaba ejecutando en una CPU x64 con un objetivo de x86 para mi solución y un conjunto al que se hace referencia con un objetivo de CPU de Cualquiera.

2

He encontrado este error. Peverify ayudó a encontrar la fuente: era una invocación de grupo de métodos synthax. Imagínate.

1

Bueno, (para mí), logré solucionar este problema de mi lado después de una hora de investigaciones.

En VB.NET (v4.0 VS-SP1), encontré un error donde el compilador no arroja un error tampoco lo hace IntelliSense:

Observe a continuación, si agrego la siguiente línea en una función (en cualquier parte del programa, Clase/Módulo/Formulario/etc):

MyGraphics.DrawImage(OriginalImage.Clone(New System.Drawing.Rectangle(ClipX1, ClipY1, ClipW, ClipH), Drawing.Imaging.PixelFormat.Format24bppRgb), 0, 0, TempWidth, TempHeight)

el compilador tiros este error antes de que incluso golpea la función durante la depuración, no llega ni a la línea (sólo añadir a la functoin, hace que el compilador que temer incluso entrar esta función).

He copiado la línea de otra función en mi código, la función existente funciona bien, pero la nueva no funciona. Lo cual es bastante impactante para ser honesto.

Ahora, hago doble check de nuevo y encontró la causa, como el objeto OriginalImage se definió como una Bitmap en el código que estaba trabajando, sin embargo, he definido como un Image en el que no funcionó.

Luego fui a la línea de código anterior, y compruebe los parámetros/argumentos que toma la función "clonar" anterior, la de la instancia Bitmap tiene los parámetros correctos y con 3 morfos (es decir, 3 conjuntos de parámetros diferentes que puede llamar a la función con), sin embargo, con la instancia de tipo Image, el Clone no toma ningún parámetro.

Estaba bastante sorprendido de ver esto, el problema es que no recibí ningún error ni advertencia en IntelliSense, ni error de compilación, el código compilado bien, pero la función no se pudo ejecutar, estoy seguro de que esto es un error (Ahem ... a Feature) en .NET.

La reparación fue para cambiar el system.drawing.Image en system.drawing.Bitmap, código trabajado posteriormente.

espero que esto ayude a

Saludos cordiales Heider

0

reiniciar mi máquina resuelve esto para mí. Parece que hay muchas referencias a este problema que hablan de una limitación del tamaño de un método y el número de variables locales. Este es solo el caso para .net framework 2.0 o menos. Por lo tanto, su mejor opción es limpiar, reconstruir, reiniciar o, al final, reinstalar Visual Studio. En mi experiencia, es más como un Visual Studio 'atascado/corrupto'.

0

Esto es una vieja pregunta, pero acabo de encontrarme con este problema también.

Para mí fue simplemente que estaba tratando de usar objetos sin tipo en lugar de escribir fuertemente las variables. Active estrictamente la opción en mis propiedades de proyecto ASP.net y solucioné todos los errores de conversión que aparecieron y funciona perfectamente ahora.

Algo que puede querer probar antes de reinstalar VS o alguna de las otras medidas que mucho más tiempo han mencionado otros.

7

que se enfrentaron a este problema al tratar de invocar System.Management.Automation.Runspaces.RunspaceFactory.CreateRunspace() Para este caso, la solución fue la de editar el archivo de proyecto y asegurarse de que la referencia a asembly relacionada ve exactamente así:

<Reference Include="System.Management.Automation" /> 

Otras formas de referenciar este conjunto, mediante el seleccionador de VS 2012 y seleccionando el conjunto en la ubicación física del conjunto de referencia.

0

Resolví este mensaje de error totalmente falso (o al menos engañoso) al usar correctamente un objeto en el parámetro HandlerObject de ADDHANDLER ... ¡Había puesto un nombre de clase allí por error!

0

Una causa más de esto posible: recibí este error al implementar Microsoft Fakes en las pruebas unitarias. Uno de los archivos XML .fakes estaba empezando a configurar manualmente veía así antes de agregar los espacios de nombres que iba a generar para:

<StubGeneration> 
    <Clear/> 
</StubGeneration> 
<ShimGeneration> 
    <Clear/> 
</ShimGeneration> 

No hay pruebas estaban corriendo y cuando depurado pruebas en el proyecto con este Configuración de falsificaciones Obtuve el El tiempo de ejecución de idioma común detectó un mensaje de programa no válido. Saqué uno de los <Clear/> y todo se convirtió en mágicos arcoíris y unicornios.

0

Tuve el mismo problema después de instalar AppDynamics. La solución fue desinstalar AppDynamcis.

Estamos utilizando .NET remoto, para llamar son servicios web. (Proyecto heredado)

0

Lo que terminé haciendo fue eliminar las optimizaciones y la verificación de desbordamiento de enteros. Quitar las casillas de verificación de rastreo y depuración en ese mismo cuadro de diálogo me permitió funcionar.

Cuestiones relacionadas