This is a multi-purpose selection of screen capturing routines.
You can use it to capture a passed in VB Form or any window with a specified HWND. For example, you could use the GetDeskTopWindow to get the Desk Top HWND and then capture the whole desktop to a VB Picture Object.
Perhaps the best thing about these routines are that they return a standard VB Picture Object. That means that you can incorporate screen capturing routines for many different purposes (and save them to disk with the SavePicture vb statement) – for instance, if your program raises an error, you can capture the screen in your error handling routine and then save it to disk / database / whatever ! – You could even email the saved picture straight to the relevant developer.
Example usage :
' set Picture1.Picture = CaptureForm(me) PrintPicture Printer, Picture2.Picture Printer.EndDoc ' ' or : ' Dim oPic as StdPicture set oPic = CaptureWindow(0, 0, 0, _ Screen.Width / Screen.TwipsPerPixelX, _ Screen.Height / Screen.TwipsPerPixelY) ' SavePicture oPic.Picture, "c:\output.bmp" '