2010-04-28 11 views
22

Descripción general: Estoy interesado en obtener más información sobre .NET4 "Ejecución en proceso paralela" de ensamblajes, y necesito información adicional para ayúdame a desmitificarlo..NET4: Explicación de ejecución en proceso en proceso

Motivo: La aplicación en cuestión está desarrollada en .NET2 y utiliza dos bibliotecas de terceros que también funcionan contra .NET2. La aplicación se implementa (a través de una copia de archivo) en máquinas cliente en un entorno virtual que incluye .NET2. No es mi arquitectura, por favor tengan paciencia conmigo.

Meta: Para ver si es posible reconstruir los ensamblados de aplicación (o un subconjunto) contra .NET4, y enviar la solicitud como antes, sin cambiar las bibliotecas de terceros e incluyendo el perfil de cliente .NET4 (como se describe here) en la implementación.

Medidas adoptadas: se leyeron los artículos siguientes, pero no acababa de mí proporcionan suficiente información:

  1. In-Process Side-by-Side Execution: buscan en este artículo, y el Escenario dos es el más cercano se trata de describir algo que se parece a mi situación, pero realmente no la cubre con profundidad.

  2. ASP.NET Side-by-Side Execution Overview: Este artículo cubre una aplicación web, pero estoy tratando con una aplicación cliente WinForms.

  3. CLR Team Blog: In-Process Side-by-Side: Esto es útil para explicar cómo funcionan los plug-ins para alojar procesos bajo .NET4, pero no sé si esto se aplica a las bibliotecas de terceros.

Además Pasos: También estoy claro sobre cómo proceder actualizar un solo conjunto .NET2 a .NET4, con el ejecutable que queda en .NET2 (es decir, cómo configurar los archivos de solución/proyecto, si cualquier código especial necesita ser incluido, etc.).

+3

+1, pregunta muy buena. –

+1

Pregunta tonta tal vez, pero ¿acabas de intentar ejecutar la aplicación tal como está en .NET 4 CLR? ¿Sabe * que las asambleas de terceros no funcionarán (por ejemplo, debido al código de modo mixto)? Intentaría que todo se ejecutara bajo .NET 4 antes de ir de lado a lado. –

+0

Ignora el comentario anterior. Por lo que entiendo (y estoy confundido con esto también), el entorno virtual (ThinApp) envía algún tipo de .NET2 redistribuible, y la biblioteca de terceros (Crystal Reports) funciona en contra de eso. Entonces, no, todavía no tuve oportunidad, pero actualmente estoy trabajando en ello. Me gustaría saber en qué me estoy metiendo. Creo que es una molestia actualizar los clientes ThinApp in situ, pero * Creo * que podemos distribuir .NET Client Profile a través de una copia de archivo sin tantos enganches. – emptyset

Respuesta

1

En general, puede cargar ensamblados creados contra .NET 2 en .NET 4 runtime. Entonces, primero debes probar esto y ver si "simplemente funciona". Simplemente encubra su aplicación a VS 2010/.NET 4 e intente compilarla con las mismas referencias a los ensamblajes de terceros. Luego impleméntalo y probablemente funcione.

Cuestiones relacionadas