Here's a quick tip on how to capture a screenshot which includes the cursor:
Rectangle screenBounds = Screen.PrimaryScreen.Bounds;
using (Bitmap image = new Bitmap(screenBounds.Width, screenBounds.Height))
{
using (Graphics g = Graphics.FromImage(image))
{
Point p = new Point(0, 0);
g.CopyFromScreen(p, p, image.Size);
Rectangle cursorBounds = new Rectangle(Cursor.Position, Cursor.Current.Size);
Cursors.Default.Draw(g, cursorBounds);
}
image.Save("c:\\screen.jpg", ImageFormat.Jpeg);
}
Normally, Graphics.CopyFromScreen would just capture the screen without the cursor. Thus, we're 'faking' the cursor by drawing the default cursor on top of the captured image... :)