需要 .NET Framework 支持
@echo off
set "dnfpath=%systemroot%\Microsoft.NET\Framework"
for /f "delims=" %%v in ('dir /ad /b %dnfpath%\v?.*') do (
if exist "%dnfpath%\%%v\csc.exe" set "cscpath=%dnfpath%\%%v\csc.exe"
)
< "%~f0" more +15 > "%temp%\estCapture.cs"
%cscpath% /out:"%cd%\estCapture.exe" "%temp%\estCapture.cs" 1>nul
estCapture.exe
start estCapture.bmp
ping -n 2 127.1 1>nul
del estCapture.exe
goto:eof
:estCapture
using System.Drawing;
using System.Drawing.Imaging;
using System.Windows.Forms;
public class MyClass
{
public static void Main()
{
Image img = new Bitmap(Screen.AllScreens[0].Bounds.Width, Screen.AllScreens[0].Bounds.Height);
Graphics g = Graphics.FromImage(img);
g.CopyFromScreen(new Point(0, 0), new Point(0, 0), Screen.AllScreens[0].Bounds.Size);
img.Save("estCapture.bmp", ImageFormat.Bmp);
}
}
@echo off
set "dnfpath=%systemroot%\Microsoft.NET\Framework"
for /f "delims=" %%v in ('dir /ad /b %dnfpath%\v?.*') do (
if exist "%dnfpath%\%%v\csc.exe" set "cscpath=%dnfpath%\%%v\csc.exe"
)
< "%~f0" more +15 > "%temp%\estCapture.cs"
%cscpath% /out:"%cd%\estCapture.exe" "%temp%\estCapture.cs" 1>nul
estCapture.exe
start estCapture.bmp
ping -n 2 127.1 1>nul
del estCapture.exe
goto:eof
:estCapture
using System.Drawing;
using System.Drawing.Imaging;
using System.Windows.Forms;
public class MyClass
{
public static void Main()
{
Image img = new Bitmap(Screen.AllScreens[0].Bounds.Width, Screen.AllScreens[0].Bounds.Height);
Graphics g = Graphics.FromImage(img);
g.CopyFromScreen(new Point(0, 0), new Point(0, 0), Screen.AllScreens[0].Bounds.Size);
img.Save("estCapture.bmp", ImageFormat.Bmp);
}
}
本文介绍了一个使用C#编写的简单屏幕截图工具。该工具利用.NET Framework中的Graphics类从屏幕捕获图像,并将其保存为BMP格式。代码展示了如何创建Bitmap对象以匹配屏幕分辨率,并使用Graphics对象的CopyFromScreen方法获取屏幕内容。
1958

被折叠的 条评论
为什么被折叠?



