2008-12-17 16 views

Respuesta

3

ArnieZ.

Cualquier DLL COM se puede utilizar desde .NET. Agregándolo como referencia en Visual Studio generará un archivo DLL llamado

"YourDll.Interop.dll"

Este es un NET -> COM cálculo de referencias de biblioteca, y hará lo que necesita.

También se pueden generar desde la línea de comandos usando tlbimp.exe

Por supuesto, usted tiene que tener en cuenta que está invocando a los componentes COM, y acordarse de usar el .NET Marshaling API para disminuir la referencia cuenta cuando haya terminado de usarlos, de lo contrario, provocará pérdidas de memoria.

He completado la implementación de interoperabilidad en otra biblioteca que implementa IDisposable en sus objetos para que la limpieza se maneje automáticamente antes, pero si se trata de una biblioteca grande, puede que no valga la pena.

1

¿Qué tal añadir una referencia a esta API en su VS.Net y dejar VS.Net crear un contenedor administrado para usted? No estoy al tanto de ninguna API "administrada" para esto. Avíseme si lo encuentra :)

+0

Si no encuentro uno, podría considerar escribir uno. Eso sería un proyecto interesante ... :) –

7

Ahora hay una buena biblioteca que envuelve esto: http://www.codeproject.com/KB/library/VMWareTasks.aspx

+0

Gracias. ¡Buen trabajo! Lamentablemente, descubrí que VMware Workstation no expone ciertas operaciones de administración que necesito (como la creación de máquinas virtuales y equipos de máquinas virtuales). No podré alcanzar el nivel de automatización que quiero hasta que actualice a ESX, :-( –

+0

Es realmente muy bueno. Y dblock es el autor de dicha envoltura, ¡y una persona muy útil! – Retne

+0

Fyi , VMWareTasks se ha movido a https://github.com/dblock/vmwaretasks/blob/master/README.md –

4

VMWareTasks es una envoltura completa para VixCOM: http://vmwaretasks.codeplex.com

+0

¿Esto requiere que se copien algunos componentes de redist? No pude encontrar ninguna biblioteca .NET wrapper que funcione sin instalar VIX en el cuadro de destino. –

+0

Requiere VIX, sí. Todavía hace que sea mucho más fácil de usar que VIX directamente. –

+0

instalar vix es problemático, es una gran instalación ... –

Cuestiones relacionadas