Re: リッチクライアント画面のスクリーンショット取得方法
null
投稿数: 191
![長老 長老](../../uploads/rank3dbf8eb1a72e7.gif)
そうそう。書き漏れていました。
ClipRead() はクライアント側で実行してくれるんですが、
内容がCF_UNICODETEXT形式で返るので、
クリップボードからファイルへ変換する処理も
.Net 連携でやるしかない感じでした。
以下、割と適当ですが・・・
public static void PrintScreen(System.String strImage)
{
SendKeys.SendWait("%{PRTSC}");
// クリップボードに格納された画像の取得
IDataObject data = Clipboard.GetDataObject();
if (data.GetDataPresent(DataFormats.Bitmap))
{
Bitmap bmp = (Bitmap)data.GetData(DataFormats.Bitmap);
// 取得した画像の保存
//bmp.Save(System.Environment.GetEnvironmentVariable("TEMP") + "\\uniRIACache\\printscreen.jpg", System.Drawing.Imaging.ImageFormat.Jpeg);
bmp.Save(strImage, System.Drawing.Imaging.ImageFormat.Jpeg);
}
}
その後、ClientFileToServer() とかでサーバー側に転送って感じで。
ClipRead() はクライアント側で実行してくれるんですが、
内容がCF_UNICODETEXT形式で返るので、
クリップボードからファイルへ変換する処理も
.Net 連携でやるしかない感じでした。
以下、割と適当ですが・・・
public static void PrintScreen(System.String strImage)
{
SendKeys.SendWait("%{PRTSC}");
// クリップボードに格納された画像の取得
IDataObject data = Clipboard.GetDataObject();
if (data.GetDataPresent(DataFormats.Bitmap))
{
Bitmap bmp = (Bitmap)data.GetData(DataFormats.Bitmap);
// 取得した画像の保存
//bmp.Save(System.Environment.GetEnvironmentVariable("TEMP") + "\\uniRIACache\\printscreen.jpg", System.Drawing.Imaging.ImageFormat.Jpeg);
bmp.Save(strImage, System.Drawing.Imaging.ImageFormat.Jpeg);
}
}
その後、ClientFileToServer() とかでサーバー側に転送って感じで。
投票数:1
平均点:10.00
投稿ツリー
-
リッチクライアント画面のスクリーンショット取得方法 (NAS_Sogabe, 2012-4-9 16:41)
-
Re: リッチクライアント画面のスクリーンショット取得方法 (null, 2012-4-10 10:23)
-
Re: リッチクライアント画面のスクリーンショット取得方法 (NAS_Sogabe, 2012-4-10 10:31)
-
Re: リッチクライアント画面のスクリーンショット取得方法 (null, 2012-4-10 11:43)
-
-
-