[原创]批处理屏幕截图
Posted | archive
@echo off
set "dnfpath=C:\\Windows\\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 2>nul
estCapture.exe
start estCapture.bmp
ping -n 2 127.1 1>nul 2>nul
del estCapture.exe 2>nul
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);
}
}
展示下批处理调用 .NET 的威力,需要 .NET Framework支持,测试环境: Windows Vista + .Net Framework 3.0 。代码比较简单,没写注释哈。
Comments