Pregunta

Estoy escribiendo código para realizar los siguientes pasos;

Registre un .net .dll y genere un .tlb usando regasm.exe

  1. Registre un .net .dll y genere un .tlb usando regasm.exe
  2. Genere el código IDL desde el typelibrary y guárdelo en un archivo.
  3. Edite el código IDL haciendo cambios menores.
  4. Recompire el IDL en un .TLB usando Midl.exe.

El paso en el que estoy atrapado, como estoy seguro de que has adivinado, es la generación del IDL. Sé que esto se puede hacer manualmente utilizando el OleViewer que viene con la API de Windows, sin embargo, me gustaría eliminar este paso manual.

Parece que no puedo encontrar de todos modos para operar el OleViewer a través de la línea de comandos o encontrar cualquier otro método para generar el código IDL.

¿Alguien tiene alguna idea? Sé que el código para generar el IDL debe estar en el Oleviewer en algún lugar ... ¿Quizás hay una manera de acceder a él?

¿Fue útil?

Solución

El vino tiene una implementación de código abierto de OleView

http://source.winehq.org/git/wine.git/tree/head:/programs/oleview

Quizás pueda usar las funciones de enumeración de IDL en typelib.c

http://source.winehq.org/git/wine.git/blob/head:/programs/oleview/typelib.c

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