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");