05-29-2013, 02:51 PM,
|
|||||
|
|||||
スクリーンショットを取得したい
Curlのアプリで、エラーが発生した際にスクリーンショットを送ってもらうことが、時々あるんですが、
これをCurlのアプリ側でハンドリングすることはできないでしょうか? ①スクリーンショットを取得する(クリップボードでも、メモリ上でも、ファイルでも) ②特定のフォルダに吐き出す の処理ができれば嬉しいんですが、 ActiveXで出来るのか?とも思ったんですが、ActiveXの情報の集め方がよくわからず、 苦戦しています。 よろしくお願いします。 |
|||||
05-31-2013, 01:01 PM,
|
|||||
|
|||||
RE: スクリーンショットを取得したい
Curlアプリのエラー状況のスクリーンショットに使えるか怪しい感もありますが
試しにCurlで保存するコードを書いてみました。 Code: || CurlのグラフィックをPNG形式のファイルに保存するプロシージャ 画面がリフレッシュされると直ってしまうエラーの場合は上記の方法だと駄目かもしれないので、 その場合はスクリーンショットを取るActiveXコンポーネントを使った方がよいかもしれないですね。 Windwos標準でもっているActiveX だと、WScript.Shell が使えそうなのですが、これで OSにALT + PrintScreenキーイベントを送ればクリップボードにスクリーンショットをとれるかとも 思ったのですが、情報抜き取りの悪用を避けるためかPrintScreenキー送信は不可でした・・・ 他の方法も探してみます |
|||||
05-31-2013, 04:07 PM,
|
|||||
|
|||||
RE: スクリーンショットを取得したい
試してみました。
かなりいい!ですが、POPUPだったり、Viewだったりで複数のオブジェクトが表示されている場合があるので、 あと一歩!(勝手に、評価してすいません)という印象でした。 たしかにPrintScreenは渡せないみたいですね。 ちょっと調べた範囲では、Excelを使った方法があるみたいですが http://d.hatena.ne.jp/language_and_engin...1227203100 これと同等のことをCurlからやる方法がイマイチわからず。。。 CurlとActiveXを駆使すればなんでもできてしまいそうな反面、 ActiveXとかWindowsの知識がシッカリしていないので、実装が難しいです。。。 上のコードをCurlに変換して頂けませんか! 期待してます。。。 |
|||||
05-31-2013, 06:50 PM,
|
|||||
|
|||||
RE: スクリーンショットを取得したい
ご指摘の通り、エラーが発生したときの状況把握という目的だとイマイチなのですよね・・・
Curlだけで書いているのでプラットフォーム依存がないというメリットはあるのですが >ちょっと調べた範囲では、Excelを使った方法があるみたいですが Excelマクロの機能をつかってWin32APIのkeybd_event()でキーイベントを送信・・・ なにかいろいろとレガシーな機能やAPIを使った方法のようなので、OSやExcelの バージョンによっては動かなくなりそうな裏技っぽい気もしますが、書いてみました。 とりあえず、Windows7 pro(32bit) +Excel2007の環境ではこれで動作しました。 Code: {import * from CURL.GRAPHICS.ACTIVEX} アクティブウィンドウをキャプチャするために、ALTキーのon/offを追加していますが、 ディスクトップ全体をキャプチャしたい場合は"ALT press"/ ”ALT release”の コメントが付いている行を削ってください。 とりあえず動きますという程度のコードですが、Curlでもこの技つかえましたね、 ということでご参考まで。 |
|||||
« Next Oldest | Next Newest »
|
Users browsing this thread:
2 Guest(s)
2 Guest(s)