問題タブ [spy++]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
windows - 「Spy++ のメッセージ フックで問題が発生しました」
Windows API メッセージングの問題をトラブルシューティングしている最中ですが、Spy++ が機能しなくなっていることがわかりました。メモ帳でも機能しません。場合によっては、次のメッセージが表示されます。
これが発生する既知の理由はありますか?
編集:ちょっと疑問に思っています: これは私のウイルス対策または Windows の更新が原因でしょうか? または、メッセージフックで遊んでいる他のプログラムですか?
introspection - PowerBuilder アプリケーション用の Spy++
PowerBuilder ベースのアプリケーションの状態を検査できるツールを作成しようとしています。私が考えているのは、PowerBuilder ベースの GUI のオブジェクト ツリー (およびオブジェクトのプロパティ) を調べることができる Spy++ (または、.NET アプリケーション用に存在する「スヌープ」) のようなものです。
私は通常の (MFC ベースの) アプリケーションと .NET アプリケーションに対して同じことを既に行いましたが、残念ながら私自身は PowerBuilder でアプリケーションを開発したことがないので、現時点で 2 つの問題について考えています。
PowerBuilder アプリケーションのビジュアル オブジェクトのツリーをトラバースできる API (できれば Java または C/C++) はありますか? PowerBuilder Native Interface システムについて少し調べましたが、これは PowerBuilder スクリプト言語から呼び出すことができる C/C++ で PowerBuilder 拡張機能を記述することを意図しているようですね。
利用可能な API がある場合、PowerBuilder アプリケーションは、PowerBuilder アプリケーションのプロセス内にいなくても、PowerBuilder オブジェクト階層の状態を調べることができる、ある種の IPC 対応 API を公開しているのではないでしょうか? 自動化インターフェースが利用可能か、COM ベースのものか、それとも何か他のものがあるのでしょうか?
現在の印象では、PowerBuilder アプリケーションのプロセスに DLL を挿入し、実行中の PowerBuilder VM にアクセスして、オブジェクト ツリーをクエリできるようにする必要があると思います。次に、ある種の IPC メカニズムを使用して、この情報を PowerBuilder アプリケーションのプロセスから転送できるようにします。
誰かがこれを経験したことがありますか、または誰かがすでにこれをやろうとしたかどうかに光を当てることができますか?
よろしくお願いします、
- フレリッヒ
opengl - OpenGL レンダー ツリー用の Spy++ に似たツール
ここで、OpenGL シーンのグラフィカル要素のオブジェクト ツリーを視覚化できる Spy++ のようなツールを知っている人はいますか? 可能であれば (Spy++ でこれを実行できます)、ツールがアプリケーションに組み込まれているサポートを必要としない場合は素晴らしいことです。
私はまだ OpenGL にあまり詳しくありませんが、OpenGL シーンのレンダー ツリーのツリー構造のビューを求めているのかもしれません。
c# - Windows で開いているアプリケーションから値を読み取るにはどうすればよいですか?
別のアプリケーションからメモリ値を読み取るプログラムを作成または使用したいと考えています。これを行うアプリケーション/ライブラリを知っている人はいますか?
対象アプリは こちらです。そこから為替レートの値を読み取りたいと思います。
私は経験豊富な C# プログラマーですが、Win32/user32 API を扱ったことはありません。
私を正しい方向に導く助けは大歓迎です。
更新: Spy++ を使用してウィンドウ ハンドルを取得できたので、何らかの方法で値を取得できると確信しています。
wpf - WPF 用の Spy++ のようなユーティリティはありますか?
Win32 のバックグラウンドを持つ「筋金入りの」WinForms プログラマーとして、私は常にSpy++を使用して、自分のアプリケーションが UI レベルで何をしているのかを理解してきました。
- コントロールが互いに送信しているイベントを確認します。
- 実行時にコントロール ツリーを表示する
- ディスプレイの一部を描画しているコントロールを見つける
次に、ソース コードでコントロール名を検索することがよくあります。これは、よくわからない大規模なアプリケーションで UI を変更する必要がある場合に非常に役立ちます。
では、 WPFアプリケーションで同じことを行うにはどうすればよいでしょうか。
(必要に応じて WPF アプリケーションのソース コードにアクセスできると思われるかもしれませんが、むしろアプリケーションのソース コードを必要とせずにユーティリティが機能しました。)
回答ありがとうございます。StackOverflow で「<a href="http://blois.us/Snoop/" rel="nofollow noreferrer">Snoop」を検索したところ、WPF ツールのリストを含むいくつかの質問/回答が見つかりました。 .
- WPF 開発に使用するツール
- WPF または Silverlight アプリケーションを開発するためのツール
- WPF プログラムを高速化するには? - 関連ツールのリストがあります
c# - 別のアプリケーションのコントロールから項目を読み取る
ソースがない MDI アプリケーションがあります。MFCアプリケーションだと思います。その機能の一部を自動化する必要があります。
リストビュー タイプのコントロールを含むフォームがあります。新しい C# アプリケーションからそのリストを読み込んで、正しいアイテムを選択できるようにしたいと考えています。VS2008 から Spy++ を試しましたが、リストビュー コントロールが表示されません。有用な Windows メッセージはありません。このリストの項目を新しいアプリケーションで使用できるようにするにはどうすればよいですか?
ありがとう。
.net - Spy++ が欲しいのですが、Visual Studio がありません
SQL Server 2008 クライアント ツールしか持っていません。Spy++を使用したいのですが、もちろん、Visual Studio のインストールにのみ付属しています。
私が使用できる Spy++ の適切な代替品はありますか?
c# - スレッドに Windows ハンドルがあるかどうかを検出するにはどうすればよいですか?
スレッドに特定のプロセスの Windows ハンドルがあるかどうかをプログラムで検出するにはどうすればよいですか?
spy++ はこの情報を提供してくれますが、プログラムで行う必要があります。
C# でこれを行う必要がありますが、.net 診断ライブラリではこの情報が得られません。spy++ は、私が知らない Windows API 呼び出しを使用していると思います。
デバッグしようとしているシステムのコードにアクセスできます。ウィンドウハンドルを含むスレッドの数を検出し、この情報をログに記録するタイマーによって定期的に呼び出されるコードを埋め込みたいと思います。
ありがとう
c# - C# アプリで Spy++ と同様の機能を取得するにはどうすればよいですか?
オープンソースのパスワード マネージャーであるKeepassのプラグインに興味があります。現在、Keepassは現在、ウィンドウのタイトルに基づいて、コピー/貼り付けするパスワードを検出しています。これにより、Keepass は、現在のサイト (Chrome など) に基づいてウィンドウ タイトルを積極的に更新しないアプリに必要な現在のパスワードを検出できなくなります。
Spy++ の動作と同様に、別のプロセス ウィンドウ要素 (ボタン、ラベル、テキスト ボックス) をどのように操作できますか? Spy++ を実行すると、他のプログラム ウィンドウにカーソルを合わせると、さまざまなコントロール (ラベル、テキスト ボックスなど) に関するさまざまなプロパティに関するあらゆる種類の情報を取得できます。理想的には、パスワードをコピー/貼り付けする一致するアカウントを見つけるために、アクティブなウィンドウの要素をウォークスルーすることで、Keepass プラグインが現在のウィンドウの検出を強化するようにしたいと考えています。
C# を使用して、他のプロセス ウィンドウ要素をウォークし、ラベルとテキスト ボックスの値を取得するにはどうすればよいですか?
user-interface - 実行中のアプリケーションにウィンドウをアタッチ
ソースコードがなく、それを開発した会社が存在しない、古いカスタムビルドの ERP アプリケーションを使用している顧客がいます。アプリケーションは 2000 年に開発され、Delphi で構築されています。最後の実行可能ファイルは 2003 年のものなので、D6 または D7 である可能性があります。
ある重要なフォームには、顧客が他のデータベースからの追加データを表示したいフィールドがいくつかあり、既存のフォームにデータを「ダクトテープ」することが可能かどうか尋ねられました。
私が最初に思いついたのは、次のようなアプリケーションを構築することです。
- Windows ターゲット アプリケーションのリストを参照して、フォーム上のコントロールを作成および検索します
- 対象のフォームが表示されたときに通知を受け取る「何らかの」イベントをアタッチする
- ターゲットフォームのフィールドが変更されたときに通知を受け取る「何らかの」イベントを添付する
- ターゲット フォームに重ねて小さなウィンドウに追加情報を表示する
このようなことを行う方法の例はありますか。この質問のタイトルのバリエーションでグーグルを検索しましたが、成功しませんでした。
注 - ERP アプリケーションの書き換えは予定されていません。
言語について - C# や Delphi でできます。