Crear una clase para contener funciones de archivos DLL

Empaquetar una función de un archivo DLL de una clase administrada que se utiliza con frecuencia es un buen sistema para encapsular la funcionalidad de la plataforma. Aunque no es obligatorio hacerlo en todos los casos, es muy cómodo proporcionar un contenedor de clase porque la definición de funciones de archivos DLL puede ser una tarea laboriosa y puede dar lugar a errores. Si está programando en C# o Visual Basic, debe declarar las funciones de archivos 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 a la que se desea llamar de un archivo DLL. La definición puede contener información adicional, como el juego de caracteres o la convención de llamada utilizada para pasar argumentos de método; si se omite esta información, se seleccionan los valores predeterminados. Para obtener una lista completa de las opciones de declaración y sus valores predeterminados, vea Crear prototipos en código administrado.

Una vez empaquetadas, puede llamar a los métodos de las funciones del mismo modo que se llama a los métodos de cualquier otra función estática. La invocación de plataforma controla la función exportada subyacente de forma automática.

A la hora de diseñar una clase administrada para la invocación de plataforma, hay que tener en cuenta las relaciones que existen entre las clases y las funciones de archivos DLL. Por ejemplo, puede:

  • Declarar funciones de archivos DLL dentro de una clase existente.

  • Crear una clase individual para cada función de un archivo DLL, de este modo las funciones se mantienen aisladas y resultan fáciles de encontrar.

  • Crear una clase para un conjunto de funciones relacionadas de un archivo DLL para formar grupos lógicos y reducir la sobrecarga.

Puede dar a la clase y a sus métodos los nombres que desee. Para obtener ejemplos que muestren cómo construir declaraciones .NET que se utilizan con la invocación de plataforma, vea Calcular referencias de datos con invocación de plataforma.

Vea también

Conceptos

Consumir funciones DLL no administradas
Identificar funciones en archivos DLL
Crear prototipos en código administrado

Otros recursos

Llamar a una función DLL