« ソルバー勤務シフト | | IEタブ制御 »
2015年06月02日
GetText.DLL
ポイント位置のテキスト取得DLL Ver 0.25 2015/06/02 シェアウェア ¥1,080 ダウンロード
【概要】
本DLLはマウス座標位置の表示文字、ステータスバーテキスト、およびMSAA(Microsoft Active Accesibility)情報を取得するDLLです。
MSAAに準拠して作成されているウィンドウであれば、全ての文字情報が取得できます。
(MSAAに準拠していないウィンドウ(Google Chromeなど)は一部不可)
下図は本DLLを利用してポイント位置の情報を表示した例
Program Files\Internet Explore フォルダ内をポイントしたもの
本例では VisualBasic6.0 を使用していますが、
VisualBasic2008、VisualC#2008,VisualC++.NETでも確認済み
■動作可能OS
Windows98se/2000/XP/Vista/Windows7
■動作条件
使用する言語に応じた開発環境が整っていること。
■解凍と使用方法
解凍すると、「読んでね.txt」と3つのフォルダが現れます
・DLL DLL および
ライブラリ/ヘッダファイル(C++用)
・実装例 DLLを使用した実際の実行イメージ(VB6)
・Sample Source それぞれの言語でGetText.DLLを利用したサンプルソース
GetString-VB6 VisualBasic6.0のサンプルソース
GetString-VB2008 VisualBasic2008のサンプルソース
GetString-C#2008 VisualC#2008のサンプルソース
GetString-C++Net.2003 VisualC++.NET.2003のMFC ダイアログベースのサンプルソース
制限事項はありませんが、
"ポイント位置のテキスト取得(GetText.DLL)」をお試し頂きありがとうございます。 "
のメッセージが、初回の呼び出しと、以降30秒間隔で表示されます。
RegistKey関数でライセンスキーを登録すると、メッセージは表示されなくなります。
レジストリなどへの恒久登録ではないので、使用毎に登録が必要です。
(本DLLを呼び出すアプリにおいて、起動時に登録)
---------------------------------------------------------
下記はVisualBasic2008で Form_Load イベントにて登録する例
xxxxxxxx-xxxxxxxx-xxxxxxxx-xxxxxxxx がライセンスキー
Private Sub Form1_Load(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles MyBase.Load
'----------------------------------------------------
'ライセンスキーを登録します
'----------------------------------------------------
Dim rc As Integer
rc = RegistKey("xxxxxxxx-xxxxxxxx-xxxxxxxx-xxxxxxxx")
End Sub
コメント
詳細にありがとうございます。
質問に対してとりいそぎ、ご回答致します。
A. 仰る通りです。エクセル版GetTextDLL単独では正常動作を確認しています。自社システムを起動していると、エクセル版GetTextDLLの起動まではできますが、文字列取得を開始するとフリーズします。
B. 他のエクセルブックは、自社システムを起動していない時は正常動作します。起動した時の動作は確認してみます。
C. VB6等の他のサンプルについて確認してみます。
自社システムですが、VisualStudioで作られた専用のプログラムと書きましたが、勘違いでした。クライアント・サーバー方式で、端末に独自のプログラムを格納する必要があるそうです。oracleを利用している様です。
投稿者 Anonymous : 2020年06月06日 23:13
>fibamann 様
GetTextDLL をお試し頂き、ありがとうございます。
現在のところ、ご指摘に似た現象の報告はありません。
つきましては、回答の前に、いくつか不明な点があります。
■「自社システムと同時にエクセル版GetTextDLLを立ち上げると、エクセルがフリーズ」について
A.エクセル版GetTextDLL単独では、正常に起動でき、文字取得も正常にできるが、
御社システムが起動されていると、エクセル版GetTextDLLが起動できない、ということでしょうか?
B.GetTextDLLを組み込んでいないエクセルブックは、御社システムの起動状態に関わらず、正常に開くことが出来ますでしょうか?
C.他のサンプル(VB6,VC#、C++)版は、御社システムの起動状態に関わらず、正常に起動できる?
もしくは、同様にフリーズするのでしょうか?
お手数をお掛けしますが、よろしくごお願い致します。
エムティ・ソフト
投稿者 エムティ・ソフト : 2020年06月05日 01:02
エクセル版GetTextDLLに関して1点ご質問させて下さい。
自社システムと同時に、エクセル版GetTextDLLを立ち上げると、エクセルがフリーズし、文字列取得ができません。
似たような事例、及び対策は報告されていますでしょうか?
なお、エクセルだけがフリーズし、自社システム内及び他のマウス操作は可能となっております。
また、自社システムを閉じると文字列取得はできるようになります。
自社システムに関してですが、Internet Exploreから開きますが、恐らくVisualStudioで作られた専用のプログラムだと思います。(知識不足で詳細は分からず申し訳ありません)
HPの「Office64ビット版への対処」を読み、32/64ビット版双方に対応させるためにソースを変更してみましたが、効果はありませんでした。
ポイント位置の文字列取得ツールは非常に効果的なものですので、購入したいと考えております。
何卒ご教授頂けますと幸いです。
投稿者 fibamann : 2020年06月02日 22:48
投稿者 エムティ・ソフト : 2015年06月03日 08:28
エムティ・ソフト ご担当者様
お世話になります。
ポイント位置のテキスト取得 DLLのライセンスについて教えてください。
会社組織で使用する場合、DLLをインストールする端末毎にライセンスの購入が必要でしょうか?
下記の使用を想定しております。
①自前で「ポイント位置のテキスト取得 DLL」を使用したソフトを作成し1~50台のタブレットにインストール
②DLLはタブレット毎に配置
この場合、配置する端末毎にライセンスの購入が必要でしょうか?
開発言語はVisualBasicですので別々のライセンスが必要となると端末毎にライセンスキーを埋め込んだソースを
コンパイルしなおすことになってしまいます。
DLLの使用は組織内で完結使用し、他組織への販売などの目的では使用しません
回答よろしくお願いします。
以上
投稿者 hosokawa : 2015年06月03日 08:27
>MMM様
ご質問への回答です。
Q1.現機能では、ポイント位置(カーソル)の文字取得とありますが、あらかじめ設定したポイント位置を読み込むことを設定できますでしょうか?
A1.できます。
パラメータで座標(x,y)を渡すことで、その位置の文字列を取得できます。
ポイント位置の・・と記していますが、実際は、マウスカーソルの位置は関係ありません。
取得する文字列の位置が入力パラメータとなります。
Q2.取得文字をファイルに出力することは可能でしょうか?
A2.DLLからの出力はしません。
DLLを呼び出す側のプログラムで出力(印刷や画面表示)は行って下さい。
よろしくお願いします。
投稿者 エムティ・ソフト : 2015年02月07日 05:59
初めまして、MMMと申します。
「ポイント位置のテキスト取得 DLL」についていくつか質問させてください。
①現機能では、ポイント位置(カーソル)の文字取得とありますが、あらかじめ
設定したポイント位置を読み込むことを設定できますでしょうか?
②取得文字をファイルに出力することは可能でしょうか?
宜しく、お願い致します。
投稿者 MMM : 2015年02月05日 13:23
>ぼすとん様
Q1.Excel2010のVBAから利用することは可能でしょうか?
A1.可能です。
ExcelVBAから呼び出すサンプルを追加しましたので、ダウンロードしてお試しください。
Q2また、レジストリなどへの恒久登録ではないので、使用毎に登録が必要です。
(本DLLを呼び出すアプリにおいて、起動時に登録)
というのは、実行時に管理者権限が必要になるということでしょうか?
A2.レジストリ云々は、ライセンスキーのことです。
記憶されないのでDLLを呼び出す(使用時)に毎回登録が必要である。という意味です。
ExcelVBAのサンプルでは、WaorkbookOpen時に登録しています。
管理者権限はこの場合関係ありません。
なお、権限は、DLLを呼び出すアプリケーションの権限を継承します。
よろしくおねがいします。
エムティ・ソフト
投稿者 エムティ・ソフト : 2015年01月17日 08:31
「ポイント位置のテキスト取得 DLL」につきまして2点ほど質問させてください。
(1)Excel2010のVBAから利用することは可能でしょうか?
試してみればよいのですが、少々横着してメールで伺います。
(2)また、
>レジストリなどへの恒久登録ではないので、使用毎に登録が必要です。
>(本DLLを呼び出すアプリにおいて、起動時に登録)
というのは、実行時に管理者権限が必要になるということでしょうか?
投稿者 ぼすとん : 2015年01月17日 08:31