loadbitmap (user32)
Last changed: jtitley@net180.com-218.214.55.35

.
Summary

C# Signature:

[DllImport("user32.dll")]
static extern IntPtr LoadBitmap(IntPtr hInstance, string lpBitmapName);

VB Signature:

Declare Function LoadBitmap Lib "user32" Alias "LoadBitmapA" (ByVal hInstance As IntPtr, ByVal lpBitmapName As String) As IntPtr

User-Defined Types:

None.

Notes:

Can also be declared as:

static extern IntPtr LoadBitmap(IntPtr hInstance, long resourceID)

but calling this generates as PInvokeStackImbalance MDA exception (though seems to work, despite it).

Notes Review:

The PInvokeStackImbalance MDA exception is throw because the .NET longs are 64 bits, and the API longs 32.

To correct this, the function declaration at your .NET code must be the next:

static extern IntPtr LoadBitmap(IntPtr hInstance, int resourceID);

Tips & Tricks:

Please add some!

Sample Code:

Please add some!

Alternative Managed API:

Do you know one? Please contribute it!

Documentation
LoadBitmap on MSDN