Отключение кнопки «Далее» в InstallScript - PullRequest
0 голосов
/ 01 сентября 2011

Использование InstallShield - проект InstallScript:

Я создал настраиваемое диалоговое окно для поиска файла.

В диалоговом окне инициализации я хочу отключить кнопку «Далее».

Я успешно отключил другие кнопки в этом диалоговом окне, кроме кнопок мастера установки: Отмена, Далее и Назад.

Я использовал функции _WinSubEnableControl или EnableWindow.

Ответы [ 2 ]

2 голосов
/ 05 сентября 2011

Это работает для меня:

   function
     HWND    hwndDlg, hwndNext;
     ...
   begin
     ...
     hwndDlg = CmdGetHwndDlg( strDialogName );
     hwndCtrl = GetDlgItem(hwndDlg, NEXT);
     EnableWindow(hwndCtrl, FALSE);
     ...
   end;

Если вы не нашли это полезным, пожалуйста, опубликуйте свой код.

1 голос
/ 05 сентября 2011

Код для отключения кнопки должен быть после вызова SdGeneralInit. Если вы поставите его раньше (как я сделал), изменения не будут сохраняться.

Вызов SdGeneralInit явно включает кнопку «Далее», поэтому она не работает для кнопки «Далее», но работает для других пользовательских кнопок в диалоговом окне.

Это должно выглядеть примерно так:

case DLG_INIT:    

    SdGeneralInit( szDlg, hwndDlg, 0, szSdProduct );

    hDlgHandle = CmdGetHwndDlg(szDlg);          
    hNextButton = GetDlgItem(hDlgHandle, 1); // 1 is the id for the next button.            
    EnableWindow(hNextButton, FALSE);
...