Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

Показать сообщение отдельно

Новый участник


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

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


Цитата:
K.A.V. : Со стандартной оболочкой? Что-то я не замечал таких проблем никогда, может, у вас в скрипте прописаны какие-то уникальные функции??
Ну вот простенький пример кода. Когда мы снимаем/ставим галочку у компонента, надпись Space available: исчезает.

Код: Выделить весь код
!include "MUI2.nsh"

Name "Components Example"
OutFile Components.exe
InstallDir $TEMP

RequestExecutionLevel user

!define MUI_PAGE_CUSTOMFUNCTION_SHOW "CompShowProc"
!insertmacro MUI_PAGE_COMPONENTS
!insertmacro MUI_PAGE_INSTFILES

!insertmacro MUI_LANGUAGE "English"

Section "Component1"
SectionEnd

Section "Component2"
SectionEnd

Section "Component3"
SectionEnd


Function CompShowProc

    System::Call 'kernel32::GetDiskFreeSpaceEx(t"$instdir",*l.r1,*l,*l)'
    System::Int64Op $1 / 1024 
    Pop $1
        
    StrCpy $4 'Space available: $1 KB'
    FindWindow $0 "#32770" "" $HWNDPARENT
    System::Call 'USER32::CreateWindowEx(i0,t "STATIC",t "$4",i ${WS_CHILD}|${WS_VISIBLE},i0,i203,i150,i20,i $0,i222,i0,i0) $R2'

    GetDlgItem $1 $0 1006
    GetDlgItem $2 $0 222
    SendMessage $1 ${WM_GETFONT} 0 0 $3
    SendMessage $2 ${WM_SETFONT} $3 1

FunctionEnd

Отправлено: 13:51, 03-09-2013 | #515