mahdi bg
سه شنبه 30 خرداد 1396, 10:01 صبح
سلام
من کد زیر رو برای گرفتن Screenshot از Desktop پیدا کردم
//Create a new bitmap.
var bmpScreenshot = new Bitmap(Screen.PrimaryScreen.Bounds.Width,
Screen.PrimaryScreen.Bounds.Height,
PixelFormat.Format32bppArgb);
// Create a graphics object from the bitmap.
var gfxScreenshot = Graphics.FromImage(bmpScreenshot);
// Take the screenshot from the upper left corner to the right bottom corner.
gfxScreenshot.CopyFromScreen(Screen.PrimaryScreen. Bounds.X,
Screen.PrimaryScreen.Bounds.Y,
0,
0,
Screen.PrimaryScreen.Bounds.Size,
CopyPixelOperation.SourceCopy);
// Save the screenshot to the specified path that the user has chosen.
bmpScreenshot.Save("Screenshot" + x.ToString() + ".png", ImageFormat.Png);
کد بالا خوب کار میکنه فقط یک جا به مشکل می خوره
اونم زمانی است که نیاز است که یک برنامه run as administrator اجرا بشه
در این حالت Exception رخ میده، "The handle is invalid" و تصویری نمی گیره، مشکل رو باید چطوری رفع کنم؟
ممنون
من کد زیر رو برای گرفتن Screenshot از Desktop پیدا کردم
//Create a new bitmap.
var bmpScreenshot = new Bitmap(Screen.PrimaryScreen.Bounds.Width,
Screen.PrimaryScreen.Bounds.Height,
PixelFormat.Format32bppArgb);
// Create a graphics object from the bitmap.
var gfxScreenshot = Graphics.FromImage(bmpScreenshot);
// Take the screenshot from the upper left corner to the right bottom corner.
gfxScreenshot.CopyFromScreen(Screen.PrimaryScreen. Bounds.X,
Screen.PrimaryScreen.Bounds.Y,
0,
0,
Screen.PrimaryScreen.Bounds.Size,
CopyPixelOperation.SourceCopy);
// Save the screenshot to the specified path that the user has chosen.
bmpScreenshot.Save("Screenshot" + x.ToString() + ".png", ImageFormat.Png);
کد بالا خوب کار میکنه فقط یک جا به مشکل می خوره
اونم زمانی است که نیاز است که یک برنامه run as administrator اجرا بشه
در این حالت Exception رخ میده، "The handle is invalid" و تصویری نمی گیره، مشکل رو باید چطوری رفع کنم؟
ممنون