Имя пользователя:
Пароль:
 

Показать сообщение отдельно
MKN MKN вне форума

Ветеран


Сообщения: 2398
Благодарности: 574

Профиль | Отправить PM | Цитировать


Цитата Salmo:
видимое оно, в данный момент, или нет? »
Код: Выделить весь код
StrCpy $0 "hwnd"
System::Call "user32::IsWindowVisible(i r0)i.r0"
# $0 here is non-zero if the window is visible.
Цитата Salmo:
найти дочерние окна по типу\названию и определить HWND »
попробуй через EnumChildWindow (в доке есть код )
или EnhancedFindWindow

Вот код, перечислит все видимые окна :
Код: Выделить весь код
!include LogicLib.nsh
showinstdetails show
outfile wind.exe
Section
System::Get "(i.r1) iss"
Pop $R0
System::Call "user32::EnumWindows(k R0,i) i.s"
loop:
    Pop $0
    StrCmp $0 "callback1" 0 done
    System::Call "user32::IsWindowVisible(ir1)i.r2"
    ${If} $2 <> 0
        System::Call "user32::GetWindowText(ir1,t.r2,i${NSIS_MAX_STRLEN})"
        System::Call "user32::GetClassName(ir1,t.r3,i${NSIS_MAX_STRLEN})"
        IntFmt $1 "0x%X" $1
        DetailPrint "$1 - [$3] $2"
    ${EndIf}
    Push 1 # callback's return value
    System::Call "$R0"
    Goto loop
done:
System::Free $R0
Sectionend

Последний раз редактировалось MKN, 02-11-2013 в 14:48.

Это сообщение посчитали полезным следующие участники:

Отправлено: 14:42, 02-11-2013 | #691