Compartir vía


Creación de una clase para contener funciones DLL

Ajustar una función DLL usada con frecuencia en una clase administrada es un enfoque eficaz para encapsular la funcionalidad de la plataforma. Aunque no es obligatorio hacerlo en todos los casos, proporcionar un contenedor de clases es conveniente porque la definición de funciones DLL puede ser complicada y propensa a errores. Si está programando en Visual Basic o C#, debe declarar funciones DLL dentro de una clase o módulo de Visual Basic.

Dentro de una clase, se define un método estático para cada función DLL a la que desea llamar. La definición puede incluir información adicional, como el juego de caracteres o la convención de llamada usada para pasar argumentos de método; si se omite esta información, se selecciona la configuración predeterminada. Para obtener una lista completa de las opciones de declaración y su configuración predeterminada, consulte Creación de prototipos en código administrado.

Una vez envuelto, puede llamar a los métodos de la clase de la misma manera que llama a métodos estáticos en cualquier otra clase. La invocación de plataforma controla automáticamente la función exportada subyacente.

Al diseñar una clase administrada para la invocación de plataforma, tenga en cuenta las relaciones entre las clases y las funciones DLL. Por ejemplo, puede hacer lo siguiente:

  • Declare las funciones DLL dentro de una clase existente.

  • Cree una clase individual para cada función DLL, manteniendo las funciones aisladas y fáciles de encontrar.

  • Cree una clase para un conjunto de funciones DLL relacionadas para formar agrupaciones lógicas y reducir la sobrecarga.

Puede asignar un nombre a la clase y a sus métodos como desee. Para ver ejemplos que muestran cómo construir declaraciones basadas en .NET que se utilizarán con la invocación de plataforma, consulte Marshalling Data with Platform Invoke.

Consulte también