tag para online mp3tag mp3meta windows-8 visual-studio-2012 .net-4.5

windows-8 - para - tag rename



¿Qué pasó con regtlibv12? (1)

Tengo una instalación limpia de Windows 8 en una partición, con Visual Studio 11/2012 Professional instalado y no puedo encontrar regtlibv12.exe dentro de C:/Windows/Microsoft.NET/Framework/v4.0.30319 .

A continuación se muestra una captura de pantalla de mi partición de Windows 7, con .Net 4.0 (y regtlibv12):

A continuación se muestra Windows 8 con .Net 4.5 (y no hay reglas):

¿ Regtlibv12 ya no forma parte del framework .Net? ¿Debo instalar también .Net 4.0? ¿Qué pasaría si instalé .Net 4.0 sobre la parte superior de 4.5? Sé que ambos van a la misma ubicación en el disco duro, y 4.5 sobrescribe efectivamente 4.0, y 4.5 viene por defecto en Windows 8. ¿Tendría que instalar 4.0 y luego volver a instalar 4.5 para recuperar regtlibv12 ?

Gracias


Nunca fue parte del marco. Y está completamente indocumentado. Sin embargo, existe un rumor muy consistente de que lo es, muchos programadores lo han encontrado en sus directorios v2.0.50727 o v4.0.30319 y descubrieron que podría resolver problemas de registro. Muchas publicaciones en el foro lo mencionan.

La forma exacta en que aparece en esas carpetas es difícil de aplicar ingeniería inversa, el único patrón que he visto es que estará allí cuando instales el marco tú mismo. Y no estará allí cuando el marco esté preinstalado en la máquina. Lo que de alguna manera tiene sentido, hay varios archivos .tlb en el directorio de framework que deben registrarse. Contienen información de tipos para .NET [ComVisible] de los que el código de cliente puede depender. Las bibliotecas de tipo de forma normal registradas no se aplican a esos archivos .tlb, ya que no están integrados en un servidor COM normal. Con la conjetura adicional de que la herramienta no es necesaria en una versión preinstalada de .NET porque la información de registro se acumula en la configuración normal de Windows.

Si te has metido en una dependencia de la herramienta, entonces no puedes hacer mucho más que copiar el .exe desde otra máquina. O aborde la razón por la que debe usarlo desde el otro extremo para que ya no lo necesite:

  • es una solución para olvidarse de usar la opción / tlb con Regasm.exe. Eso puede producir un error TYPE_E_CANTLOADLIBRARY en el tiempo de ejecución cuando el código del cliente intenta usar una interfaz COM de otro hilo. La biblioteca de tipos proporciona la información de tipo que el Marshaller estándar necesita para ordenar los argumentos del método. Use la opción / tlb para arreglar eso.

  • es una solución para que los servidores COM aparezcan en la pestaña COM + Agregar referencia de Project +. Esa pestaña muestra las bibliotecas de tipos registrados. Sin embargo, no es una solución adecuada, salvo en los servidores de compilación, puede compilar su código pero no puede ejecutarlo ya que el registro no está completo. La forma correcta de hacerlo es mediante el uso del instalador proporcionado por el autor o mediante el uso de Regsvr32.exe en una pizca, para que tanto la biblioteca de tipos como las claves CLSID se registren.

  • es una solución para los servidores COM que no registran su biblioteca de tipos. Similar a la anterior, pero el registro de bibliotecas de tipos es opcional y, por lo general, solo se requiere en su máquina de desarrollo, no en la máquina que ejecuta el servidor. La mayoría de las herramientas que pueden consumir bibliotecas de tipos tienen una forma de agregarlas explícitamente en lugar de depender de la clave de registro TypeLib. Lo mismo ocurre con el IDE de Visual Studio, puede usar la pestaña Examinar para seleccionar directamente el archivo .tlb.