我试图每 10 秒截取一次我的 Windows 应用程序的屏幕截图,并希望将其直接保存到 S3 存储桶中。
这是我的代码
//execute every 10 seconds//
using (Bitmap bmp = new Bitmap((int)screenWidth, (int)screenHeight))
{
using (Graphics g = Graphics.FromImage(bmp))
{
String filename = "ScreenCapture-" + DateTime.Now.ToString("ddMMyyyy-hhmmss") +.png";
Opacity = .0;
g.CopyFromScreen((int)screenLeft, (int)screenTop, 0, 0, bmp.Size);
MemoryStream m = new MemoryStream();
bmp.Save(m, ImageFormat.Jpeg);
new MemoryStream(m.GetBuffer());
Opacity = 1;
//converting MemoryStream M to String //
byte[] byteImage = m.ToArray();
var SigBase64 = Convert.ToBase64String(byteImage); // Get Base64
}
}
IAmazonS3 client = new AmazonS3Client(awsAccessKey, awsSecretKey, RegionEndpoint.USWest2);
TransferUtility utility = new TransferUtility(client);
request.Key = fileNameInS3; //file name up in S3
request.FilePath = SigBase64; //local file name
utility.Upload(request); //commensing the transfer
运行代码后,我没有收到任何错误消息。但它也没有将屏幕截图保存到 S3 存储桶。