Znalazłem ten kod gdzieś i uważam, że jest on bardzo użyteczny, ale chciałbym znaleźć sposób, aby działał tak, aby przechwytywał tylko dany cel okna. Może z identyfikatorem procesu lub nazwą okna. Nawet jeśli to okno nie jest aktywne.Przechwytywanie ekranu okna VB.NET (ALT + PRINTSCREEN)
Nie chcę, aby to okno było aktywne, ale chcę zrobić zrzut ekranu, tak jakbym robił na nim Alt + PrintScreen.
Oto kod, który pracuje dla wychwytywania pełnoekranowym
Private bmpScreenShot As Bitmap
Private gfxScreenshot As Graphics
bmpScreenShot = New Bitmap(Screen.PrimaryScreen.Bounds.Width, Screen.PrimaryScreen.Bounds.Height, PixelFormat.Format32bppArgb)
gfxScreenshot = Graphics.FromImage(bmpScreenShot)
gfxScreenshot.CopyFromScreen(Screen.PrimaryScreen.Bounds.X, Screen.PrimaryScreen.Bounds.Y, 0, 0, Screen.PrimaryScreen.Bounds.Size, CopyPixelOperation.SourceCopy)
bmpScreenShot.Save(fileName, ImageFormat.Png)
używam Visual Basic 2008 Express
Z góry dziękuję!
możliwe duplikat [Capture ekranu aktywnego okna?] (Http://stackoverflow.com/questions/1163761/capture-screenshot-of-active-window) – sloth