0

「MY Computer」に表示される名前空間拡張を実装しています。自動化されたテストケースを作成して、同じものをブラウズしたいと考えています。名前空間の拡張子までエクスプローラー ウィンドウを開くことができます。なので -

Process.Start("explorer.exe", "shell:::{CLSID of my namespace }")

次に、開いたウィンドウ内の特定のフォルダー名を検索したいと思います。たとえば、入力を「temp」とすると、マウスは名前空間エクスプローラー ウィンドウの「temp」フォルダーに移動する必要があります。次に、マウスの現在の位置をダブルクリックして、そのフォルダーに入ります。次に、「doc1.doc」として入力すると、マウスは「doc1.doc」ファイルを見つけて移動できるはずです。また、名前空間に関連付けられた標準ドライブがなく、相対パスもないため、getDirectory や GetFile などの API は機能しません。

助けてください。

4

1 に答える 1

0

sendkeys コマンドを使用して、namespace 拡張機能のブラウジング部分を実現できました。最初にエクスプローラーウィンドウを開くために使用しました(Win + E)。次に、キープレスをシミュレートしてみます。たとえば、「temp」というフォルダーをダブルクリックする必要がある場合、「temp」をキーストロークとして送信し、「Enter」を押します。「入力シミュレーター」は、同じことを達成するのに非常に役立ちました。

多くの投稿から読み取ったように、マウスシミュレーションを行うことは非常にトリッキーで危険に思えたので、それを避けました.

私は自分のコードを直接実行したくありませんでした (そのため、すでに単体テストを作成しています) が、ユーザーの動作をシミュレートして、コードを内部的に実行したいと考えていました。

于 2012-06-19T05:28:44.647 に答える