• 締切済み

VBスクリプトによる画像取得

VBスクリプト初心者です。 ここに書き込んでよいのか迷いましたが、お分かりになるかた いらっしゃいましたら、御教授ください。 VBスクリプトで画面に表示されているある特定の場所の ドットの色(RGB値)を読み取り変数代入するような事は 可能でしょうか? もし出来るのならば、簡単なやり方などを 教えていただけないでしょうか? よろしくお願いします。

みんなの回答

  • redfox63
  • ベストアンサー率71% (1325/1856)
回答No.2

悲しいかな VBScriptのみではどうしようもありません 画面(画像)のデータを扱う命令が皆無です ... Vecterなどで公開されているActiveX系のコントロールで画面をキャプチャーできるものがあれば可能性もありますが... VB2005 ExpressEditionが無料でダウンロードできますからこちらから攻めてみたほうがいいように思いますよ ただ VBScriptとは文法などが異なりますし、いろいろなオブジェクトの使い方を習得しないといけませんけどね... 下記参照URLにダウンロード用などのリンクがあります

参考URL:
http://www.microsoft.com/japan/msdn/vstudio/express/vbasic/
momi_ji
質問者

お礼

御回答ありがとうございます。 やはりそうですか。VBScriptだと限界があるのでしょうね。 VB2005の方、試してみたいと思います。

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.1

私も自信はなく、見当違いの惧れは有るが、画面でのアナログー>デジタル変換のドットはメモリのR,G、B値の反映であって、そのドットに番地(メモリの番地という意味ではない。スタートがあって、そこから何番目といういわばINDEX値)でも付いてないと、どこというのを指し示せないのではないですか。 今考えているドットを何番目といい現してよいのか判りますか。それを指し示して、そのドットだけいじくるニーズが多いとは思えないので、そんな仕組みは作られないでしょう。だから 頭で「>表示されているある特定の場所」というのは易しいが、具体的にどう表すのですか。10万ドット目の1ドットなどと言っても意味ないのでは。 ただ画像のある範囲がとらえられるなら、その中の全てまたは特定ののドットについて、 RGB値をあるルールで変化させるということは可能だし、ニーズもあると思う。(例 明るさ調整、コントラスト改善など) ーーー 質問者のニーズの説明が、舌足らずなのではないですか。

momi_ji
質問者

補足

御回答ありがとうございます。 質問の方が文章不足でどうもすいませんでした。 お察しの通りです。 画面のある四角の範囲内をキャプチャしその部分の データを配列変数に代入し解析を行いたかったというのが意図です。 直接キャプチャするコマンドが無ければ、画像データの格納されている VRAM領域からデータを持ってくると言う事も出来ればと思って いたのですが、そのような命令系もVBscriptでは存在するのか 不明であったので大雑把な質問になってしまいました。 実際メモリのデータを配列変数に代入と言った事も可能なのでしょうか? もしよろしければ御教授ください。 よろしくお願いします。