Type a page name and press Enter. You'll jump to the page if it exists, or you can create it if it doesn't.
To create a page in a module other than msvcrt, prefix the name with the module name and a period.
Declare Function memcpy Lib "msvcrt.dll" (TODO) As TODO
Return Value:
The value of dest.
User-Defined Types:
None.
Alternative Managed API:
System.Buffer.BlockCopy, Marshal.Copy and Array.Copy provide similar services, but require one or two managed arrays instead of pointers.
Notes:
None.
Tips & Tricks:
Please add some!
Sample Code:
Please add some!
public static Bitmap Clone(Bitmap src)
{
// get source image size
int width = src.Width;
int height = src.Height;
// lock source bitmap data
BitmapData srcData = src.LockBits(
new Rectangle(0, 0, width, height),
ImageLockMode.ReadWrite, src.PixelFormat);
// create new image
Bitmap dst = new Bitmap(width, height, src.PixelFormat);
// lock destination bitmap data
BitmapData dstData = dst.LockBits(
new Rectangle(0, 0, width, height),
ImageLockMode.ReadWrite, dst.PixelFormat);
memcpy(dstData.Scan0, srcData.Scan0, new UIntPtr((uint)height * (uint)srcData.Stride));
// unlock both images
dst.UnlockBits(dstData);
src.UnlockBits(srcData);
return dst;
}
Please edit this page!
Do you have...
helpful tips or sample code to share for using this API in managed code?
corrections to the existing content?
variations of the signature you want to share?
additional languages you want to include?
Select "Edit This Page" on the right hand toolbar and edit it! Or add new pages containing supporting types needed for this API (structures, delegates, and more).