0

IE8でダウンロードダイアログを見つける必要があります.IE8 +でこれを行う準備ができており、すべて100%動作します.Spy ++ / WinSpyを使用してwindow/perent windowの名前とクラスを見つけ、findowを取得しました.しかし、IE8では行き詰まります、ダウンロードダイアログには何の目的もなく、見つけやすいように思えますが、そうではありません。

ここに私のwinSpy

ここに画像の説明を入力

ここに画像の説明を入力

クラスとウィンドウ名を確認できますが、FindWindow は 0 を返します

ここに私のコード:

 [DllImport("user32.dll", SetLastError = true, CharSet = CharSet.Auto)]
 static extern int FindWindow(string lpClassName, string lpWindowName);

 a3 = FindWindow("Button", "&Save");
 a4 = FindWindow("Button", "Save");
 a5 = FindWindow("#32770 (Dialog)", "File Download");
 a6 = FindWindow("#32770 (Dialog)", "0% of telechargement.cgi from www.cic.fr Completed");

それらはすべて「0」です。

私が間違っていることは何ですか?

このダウンロード ダイアログ ウィンドウを見つけるのは誰ですか?

4

1 に答える 1

0

Thanx to Hans Passant i find the misstake :

The (Dialog) annotation is WinSpy trying to be too helpful

(Dialog)クラス名から削除するだけです"#32770 (Dialog)"

次の変更コードが必要です。

a5 = FindWindow("#32770", "File Download");
a6 = FindWindow("#32770", "0% of telechargement.cgi from www.cic.fr Completed");
于 2014-08-27T05:05:15.733 に答える