Вывод скриншота на весь экран поверх всех окон - C#
Формулировка задачи:
Здравствуйте!
Сразу объясню - хочу сделать программу для друга. Он любитель ставить мне всякие пакостные програмки на комп, типа снега на рабочем столе, или фейковых уведомлений об удалении виндовса.
Суть программы в следующем: на форме всего 1 кнопка и таймер. Как только друг нажмет на кнопку - программа делает скриншот и сразу ставит его поверх всех окон. (у друга начинается паника и т.д.) и как только таймер прозвенит - всё становится как прежде. Как это сделать??
Заранее всем спасибо!!!
Решение задачи: «Вывод скриншота на весь экран поверх всех окон»
textual
Листинг программы
private void timer1_Tick(object sender, EventArgs e) { IntPtr hDC = GetDC(IntPtr.Zero); using (Graphics g = Graphics.FromHdc(hDC)) { Image img = Image.FromFile("C:/scr.jpg"); g.DrawImage(img, new Point(0, 0)); ReleaseDC(IntPtr.Zero, hDC); } } private void button1_Click(object sender, EventArgs e) { pictureBox1.Image = ImageFromScreen(); Bitmap bmpSave = (Bitmap)pictureBox1.Image; bmpSave.Save("C:/scr.jpg"); timer1.Enabled = true; } public Bitmap ImageFromScreen() { Bitmap bmp = new Bitmap(Screen.PrimaryScreen.Bounds.Width, Screen.PrimaryScreen.Bounds.Height, PixelFormat.Format32bppRgb); using (Graphics gr = Graphics.FromImage(bmp)) { gr.CopyFromScreen(Screen.PrimaryScreen.Bounds.X, Screen.PrimaryScreen.Bounds.Y, 0, 0, Screen.PrimaryScreen.Bounds.Size, CopyPixelOperation.SourceCopy); } return bmp; }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д