Re: リッチクライアント画面のスクリーンショット取得方法
null
投稿数: 191
そうそう。書き漏れていました。
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)
-
Re: リッチクライアント画面のスクリーンショット取得方法
(NAS_Sogabe, 2012-4-10 10:31)
-
Re: リッチクライアント画面のスクリーンショット取得方法
(null, 2012-4-10 10:23)