サードパーティのEXE(画面)から文字列を取得するには?


キキ  2007-07-16 20:41:47  No: 136976

WindowsXPSP2
VB6SP6

EXE(製作者等不明)ファイルが既設機能として起動しています。
その中にあるLabel(と思われる)に表示される文字列を取得したいのですが、そのようなことが可能なのでしょうか?。
可能であれば、取得する方法をご教示ください。
よろしくお願いいたします。


魔界の仮面弁士  2007-07-17 00:16:06  No: 136977

基本的には無理でしょう。

可能性として、LinkTopic 等の DDE 関連の機能が設定済みならば、
外部からの取得もありえますが…普通は未設定なので望みは薄いかと。

ラベルにはウィンドウハンドルも無いので、API でも取得できませんし、
その他やれることといえば、ラベルに表示された内容から、画像解析で
文字列を読み取るぐらいしか無い気がします。

あとは……動作から解析するとか…。
http://www.vb-decompiler.org/
http://www.decompiler.org/


  2007-07-17 03:20:34  No: 136978

まずは、SPY++で取得したいウィンドウ(ラベル?)の
種類とかテキストが取得できるか確認してみては?

VCで作成したEXEのラベルだとStaticなウィンドウとして
値を取得できそうです。
ただ出来るとしてもラベルが複数あったりすると、どの
ラベルか特定出来ないので位置情報などから取得する
ベタな書き方になると思います。

#EXEがどこかからDL出来る類であればコチラでも確認できるのですが
#製作者等不明だと違いそうですね。


魔界の仮面弁士  2007-07-17 05:41:37  No: 136979

おぉ、そうか。EXE まで VB 製という記述はありませんでしたね。
# MFC や .NET 製のものであれば、少しは手の出しようがあるかも?


キキ  2007-07-20 11:59:43  No: 136980

魔界の仮面弁士様、に様
回答ありがとう御座います。風邪引いて寝込んでしまいました。

EXEですがCANONのスキャナーを起動する際に動作するソフトの
ようです。
そのEXEを起動させると、スキャナーが動作を開始し、紙を読み
取り、スキャニング→PDF化して保存という形のようです。
その結果をどこかに表示したいというだけの物ということが
判りました。
MFC/.NETであればやりようがあるのでしょうか?。


キキ  2007-07-20 12:10:29  No: 136981

追記

本日、初めてEXEが何なのか確認が出来ましたので
まずは、SPY++でEXE内テキストが確認してみます。
少々確認するまで別件もあり時間を要するかも知れ
ませんが、結果を連絡させて頂きます。
また、DL可能か否かも確認致しますので、もしご確
認頂けるのであれば幸いです。
宜しくお願い致します。


※返信する前に利用規約をご確認ください。




  


  このエントリーをはてなブックマークに追加