DllImportAttribute.SetLastError Campo

Definición

Indica que el destinatario de la llamada llamará a la función SetLastError de la API de Windows antes de volver del método con atributos.Indicates whether the callee calls the SetLastError Windows API function before returning from the attributed method.

public: bool SetLastError;
public bool SetLastError;
val mutable SetLastError : bool
Public SetLastError As Boolean 

Valor de campo

Boolean

Ejemplos

En algunos casos, Visual Basic desarrolladores usan DllImportAttribute , en lugar de usar la Declare instrucción, para definir una función dll en código administrado.In some cases, Visual Basic developers use the DllImportAttribute, instead of using the Declare statement, to define a DLL function in managed code. Establecer el SetLastError campo es uno de estos casos.Setting the SetLastError field is one of those cases.

[DllImport("user32.dll", SetLastError = true)]
int MessageBoxA(IntPtr hWnd, String^ Text,
    String^ Caption, unsigned int Type);
internal static class NativeMethods
{
    [DllImport("user32.dll", SetLastError = true)]
    internal static extern int MessageBoxA(
        IntPtr hWnd, string lpText, string lpCaption, uint uType);
}
Friend Class NativeMethods
    <DllImport("user32.dll", SetLastError:=True)>
    Friend Shared Function MessageBoxA(hWnd As IntPtr, lpText As String,
        lpCaption As String, uType As UInteger) As Integer
    End Function
End Class

Comentarios

true para indicar que el destinatario llamará a SetLastError ; de lo contrario, false .true to indicate that the callee will call SetLastError; otherwise, false. De manera predeterminada, es false.The default is false.

El serializador en tiempo de ejecución llama a GetLastError y almacena en caché el valor devuelto para evitar que otras llamadas API sobrescriban.The runtime marshaler calls GetLastError and caches the value returned to prevent it from being overwritten by other API calls. Puede recuperar el código de error llamando a GetLastWin32Error .You can retrieve the error code by calling GetLastWin32Error.

Se aplica a

Consulte también