Para ver el artículo en inglés, active la casilla Inglés. También puede ver el texto en inglés en una ventana emergente si pasa el puntero del mouse por el texto.
Traducción
Inglés

Platform Invoke Examples

 

En los siguientes ejemplos se muestra la forma de definir la función MessageBox y de llamarla en User32.dll, pasando una cadena sencilla como argumento. En los ejemplos, el campo DllImportAttribute.CharSet Field se establece en Auto para permitir que la plataforma de destino determine el ancho de los caracteres y el cálculo de referencias de cadenas.

El mismo ejemplo se muestra en Visual Basic, C# y C++. Para que se muestren todos los lenguajes, haga clic en el botón Filtro de lenguaje del ángulo superior izquierdo de la página. Para obtener más ejemplos, vea Cálculo de referencias de datos con invocación de plataforma |

using namespace System::Runtime::InteropServices;

typedef void* HWND;
[DllImport("user32", CharSet=CharSet::Auto)]
extern "C" IntPtr MessageBox(HWND hWnd,
                          String* pText,
                          String* pCaption,
                          unsigned int uType);
void main(void) {
     String* pText = L"Hello World!";
     String* pCaption = L"Platform Invoke Sample";
     MessageBox(0, pText, pCaption, 0);
}
Mostrar: