
(PrintScreenキーを押したときのように)スクリーンをキャプチャしてクリップボードにコピー(そして画像ファイルとして保存)したいと希望しております。
(スクリーンをキャプチャするソフトも作られているようですが)スクリーンのキャプチャは、(1)どのような言語を使用して(できればJavaScriptで実現したいのですが)(2)どのように記述すれば実現できるのでしょうか。
恐れ入りますが、ご教授いただけるとありがたいです。
また、大変申し訳ありませんが、(私はperlとJavaScriptを多少使用したことがある程度の知識しかないため)(一)画面上のボタンをクリックしたら、(二)スクリーンをキャプチャし、((三)画像ファイルとして保存する)といった一連の動作について、具体的な記述方法を教えていただけると大変助かります。
お手数をおかけしますが何卒よろしくお願いいたします。

No.2ベストアンサー
- 回答日時:
まずちょっと訂正が...
SendKeysじゃなくて、oomiyajiさんのいっていた
keybd_eventがAPIでした、m(_ _)m
SendKeysはVBに元からついているものでした
説明するのがちょっと苦手なので
サンプルをコピーしておきます(おぃ
これをコード(?)のところにコピーすれば
あとは実行するだけになります
一応コメントつけてましたが、参考になれるかどうかは...
'keybd_eventを使えるようにする
Private Declare Sub keybd_event Lib "user32" (ByVal bVk As Byte, ByVal bScan As Byte, ByVal dwFlags As Long, ByVal dwExtraInfo As Long)
'PrintScreen
Private Const VK_SNAPSHOT = &H2C
Private Sub Form_Load()
'クリップボードの中身を消す
Clipboard.Clear
'キャプチャするタイプを選択
If MsgBox("画面全体 → はい" & Chr(13) & "アクティブウィンドウ → いいえ", vbYesNo) = vbYes Then
'画面全体をキャプチャする時
keybd_event VK_SNAPSHOT, 1, 0, 0
Else
'アクティブウィンドウをキャプチャする時
keybd_event VK_SNAPSHOT, 0, 0, 0
End If
'つけないとうまくできない
DoEvents
'画面にキャプチャしたやつを表示
Form1.Picture = Clipboard.GetData
End Sub
ありがとうございます。おかげさまで動作いたしました。
実際に動作するサンプルソースを記述していただいたうえに、簡潔なコメント行まで(丁寧に)添えていただき、VBがはじめての私でも、一見して「VBはこのように書くのか!」とその概要がわかりました。
非常に分かりやすい説明ありがとうございました。とても感謝しております。
今後、いただいたサンプルコードを色々といじらせていただき、理解を深めていきたいと思っております。

No.1
- 回答日時:
PerlやJavaScriptの知識は一切なく
ちょっと確実とは限らないのですが..m(_ _)m
自分の知っている範囲では、API関数の「SendKey」
を使い、「PrintScreen」を押した状態にさせれば
いいはずです
ただ、
http://www.red.oit-net.jp/tatsuya/java/FAQ.htm
で、
Q:パソコンのAPIを直接、呼び出せますか?
A:できません。
とかいてあるので、多分JavaScriptでは無理かと...
http://websearch.yahoo.co.jp/bin/query?p=Perl%a4 …
で検索してみたら、なんかPerlでAPIを使えそうなので
それで「SendKey」が使えれば、キャプチャが可能かと思います
すみませんが、保存の仕方まではちょっと...
APIでできそうなのですが、保存の仕方まではわかりません...
本当に申し訳ありません!
あと、VBやC++、HSP(?)らへんなら、APIを扱えるので
キャプチャが可能だと思われます
この回答への補足
ありがとうございました。どの言語の何について調べればいいのかさえ分からず大変困っていたところで、非常に助かりました。
恥ずかしながら、「API」という言葉自体分からなかったのですが、とりあえずVBのAPIについて調べたところ、
keybd_event(VK_SNAPSHOT, 1, 0, 0);
で画面をキャプチャー(クリップボードにコピー)できるとの記載を見つけました。
そこで、とりあえず試しに
Private Sub cmdCenter_Click()とEnd Subの間に、(callをつけてみたりなどもして)「keybd~」と入れてみたりしたのですが、やはり動作しませんでした。何かを呼んでいるようですし、予め何か宣言する必要などがあるんでしょうね?
この機会にVBの勉強をはじめようと思っているのですが、とりあえずサンプルソースなどの説明を読んでも、初心者のため理解ができず困惑しております。
つきましては、もしもお時間のあるときなどございましたら、恐れ入りますが、上記API利用時の宣言の有無などについてアドバイスいただけるとありがたいです。大変申し訳ありませんが、何卒よろしくお願いいたします。
http://www.vbvbvb.com/jp/warning/index.html
http://support.microsoft.com/default.aspx?scid=k …
http://www5b.biglobe.ne.jp/~kouta_y/news/newsvb/ …
大変申し訳ございません。
補足に記載させていただきましたURLですが、一番最初のものが間違っておりました。正しくは、http://www.vbvbvb.com/jp/gtips/1051/gkeybdeventV …
です。大変失礼致しました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Java-jspの画面入力値保持について
-
三菱GOTの画面切り替えについて
-
【JSP】input typeで入力された...
-
location.hrefでページ切替時の...
-
C言語で今まで表示していた画面...
-
javaのstrutsを使った画面遷移...
-
java初心者です。 画面Aで情報...
-
C# ログイン画面からメイン画面...
-
Strutsで画面遷移させない。
-
セッション切れでのリクエスト...
-
ブラウザアドレスバーからのURL...
-
ホームページビルダーが遅い!...
-
スマホ向けに「お気に入り登録...
-
ServletからServletへの値渡し
-
JAVAのセッション変数の上書き...
-
入力フォーム(JSP)にDB検索条...
-
XMLについての質問です。
-
JDBCにてデータをひく際のエラ...
-
このサービスの仕組みが知りた...
-
FormのsubmitでFormの内容がnull
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Java-jspの画面入力値保持について
-
三菱GOTの画面切り替えについて
-
ServletからServletへの値渡し
-
セッション切れでのリクエスト...
-
C言語で今まで表示していた画面...
-
ServletからHTMLページへの遷移...
-
java初心者です。 画面Aで情報...
-
Javaプログラミングの質問にな...
-
登録後、呼び出し元ページに戻...
-
system("cls")について
-
【swing】ボタンクリックにより...
-
コンボボックスの値が画面移動...
-
遷移元を判定したい!
-
C# ログイン画面からメイン画面...
-
peek()の機能が使えれば・・・
-
ASP.NET 画面遷移前の状態を保...
-
Sessionがnullになりません。
-
ブラウザアドレスバーからのURL...
-
画面を隠す・消す方法を教えて...
-
検索画面→結果画面→検索画面と...
おすすめ情報