FindWindow не видит, но winSpy может видеть IE8 (user32.dll)

Мне нужно найти диалог загрузки в IE8, я все готово сделал это в IE8+, и все работает на 100%, я нашел имя и класс окна /perent окна с помощью Spy++/WinSpy и получил мой findow.B Но в 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".

Есть идеи, что я делаю не так?

Кому найти это диалоговое окно загрузки?

1 ответ

Решение

Спасибо Гансу Пассанту, я нахожу ошибку:

(Диалог) аннотация WinSpy пытается быть слишком полезным

Просто нужно убрать (Dialog) от имени класса "#32770 (Dialog)",

Вам нужен код изменения, чтобы:

a5 = FindWindow("#32770", "File Download");
a6 = FindWindow("#32770", "0% of telechargement.cgi from www.cic.fr Completed");
Другие вопросы по тегам