Available in LEADTOOLS Imaging Pro, Vector, Document, and Medical Imaging toolkits. |
L_CaptureActiveWindow
#include "l_bitmap.h"
L_LTSCR_API L_INT L_CaptureActiveWindow(pBitmap, uBitmapStructSize, pCaptureInfo, uInfoStructSize, pfnCaptureCallback, pUserData)
pBITMAPHANDLE pBitmap; |
/* pointer to the bitmap handle */ |
L_UINT uBitmapStructSize; |
/* size in bytes, of the structure pointed to by pBitmap */ |
pLEADCAPTUREINFO pCaptureInfo; |
/* pointer to info structure */ |
L_UINT uInfoStructSize; |
/* size in bytes, of the structure pointed to by pCaptureInfo */ |
CAPTURECALLBACK pfnCaptureCallback; |
/* optional callback function */ |
L_VOID * pUserData; |
/* pointer to more parameters for the callback */ |
Captures an image of the currently active window.
Parameter |
Description |
pBitmap |
Pointer to a bitmap handle that references the captured data. |
uBitmapStructSize |
Size in bytes, of the structure pointed to by pBitmap, for versioning. Use sizeof(BITMAPHANDLE). |
pCaptureInfo |
Address of the LEADCAPTUREINFO structure to be filled with information regarding the captured image's source. Pass NULL if you are not interested in extra information about the capture. |
uInfoStructSize |
Size in bytes, of the structure pointed to by pCaptureInfo, for versioning. Use sizeof(LEADCAPTURE). |
pfnCaptureCallback |
Optional callback function for additional processing. |
|
If you do not provide a callback function, use NULL as the value of this parameter. |
|
If you do provide a callback function, use the function pointer as the value of this parameter. |
|
The callback function must adhere to the function prototype described in CAPTURECALLBACK Function. |
pUserData |
Void pointer that you can use to pass one or more additional parameters that the callback function needs. |
|
To use this feature, assign a value to a variable or create a structure that contains as many fields as you need. Then, in this parameter, pass the address of the variable or structure, casting it to L_VOID ;*. The callback function, which receives the address in its own pUserData parameter, can cast it to a pointer of the appropriate data type to access your variable or structure. |
|
If the additional parameters are not needed, you can pass NULL in this parameter. |
Returns
SUCCESS |
The function was successful. |
< 1 |
An error occurred. Refer to Return Codes. |
Comments
This function performs a screen capture of the currently active window. The callback can be used to do multiple captures, depending on the options set using L_SetCaptureOption.
Required DLLs and Libraries
LTSCR For a listing of the exact DLLs and Libraries needed, based on the toolkit version, refer to Files To Be Included With Your Application. |
See Also
Functions: |
L_SetCaptureOption, L_SetCaptureOptionDlg, CAPTURECALLBACK, L_StopCapture, L_CaptureWindow |
Topics: |
|
|
Example
static L_INT EXT_CALLBACK pfnCaptureCallback(pBITMAPHANDLE pBitmap, pLEADCAPTUREINFO pCaptureInfo, L_VOID * pUserData) { UNREFERENCED_PARAMETER(pCaptureInfo); UNREFERENCED_PARAMETER(pUserData); /* save the captured image */ return(L_SaveBitmap (TEXT("%UserProfile%\\My Documents\\LEADTOOLS Images\\ActiveWindow.bmp"), pBitmap, FILE_BMP, 0, 0, NULL)); } L_INT CaptureActiveWindowExample(L_VOID) { BITMAPHANDLE Bitmap; LEADCAPTUREINFO CaptureInfo; memset(&CaptureInfo, 0, sizeof(LEADCAPTUREINFO)); /*To call the L_CaptureActiveWindow*/ L_INT nRet = L_CaptureActiveWindow (&Bitmap, sizeof(BITMAPHANDLE), &CaptureInfo, sizeof(LEADCAPTUREINFO), pfnCaptureCallback, NULL); if (Bitmap.Flags.Allocated) L_FreeBitmap (&Bitmap); return nRet; }