Installshield - работа с диалоговыми окнами

Тема в разделе "Программное обеспечение", создана пользователем Demian, 11 окт 2007.

Статус темы:
Закрыта.
  1. Demian

    Demian Гость

    Работаю над созданием установочного пакета в InstallShield 12 - Premier Edition
    Создал скрипт, который создает новое диалоговое окно (пустое, с идентификатором 12010)
    Вопрос такой: с помощью каких функций туда можно добавить необходимые элементы? Или надо делать по-другому - создать новое диалоговое окно в Installation Designer, записать в какой-нибудь файл и после из скрипта загрузить уже окно из этого файла?
    В справке по этому вопросу почти ничего не сказано...
     
  2. Гость

    Окно надо создать в Designer. Причем надо написать функцию которая будет обрабатывать все события которые генерируют контролы на этом окне.

    Вот пример кода в котором я сам создал новое окно для коннекции к серверу и функция для этого окна:

    Код (Text):
    //============================================================// SdServerConnectionDialog
    //
    // This function inserts address of server and checks if connection is works.
    //===============================================================
    function NUMBER SdServerConnectionDialog()
    STRING szDialogName, szDialog;
    NUMBER nvSize, nvType, nDialog, nResult, nCmdValue;
    BOOL    bDone;
    begin
    // Specify a name to identify the custom dialog box in this installation.
    szDialogName = SD_NAME_SHOW_DLG_EDIT_1; // имя окна как в Designer

    nResult = EzDefineDialog (szDialogName, "", "", MY_DIALOG_ID);
    if (nResult < 0) then
    // Report an error; then terminate.
    AbortInstallation();
    endif;

    // Initialize the indicator used to control the while loop.
    bDone = FALSE;
    // Loop until done.
    repeat
    // Display the dialog box and return the next dialog box event.
    nCmdValue = WaitOnDialog(szDialogName);

    // Respond to the event.
    switch (nCmdValue)
    case DLG_INIT:
    // Код вызывается при инициализации окна
    case NEXT_BUTTON:
    bDone = TRUE;
    nResult = NEXT_BUTTON;
    // Делаем что то
    case CANCEL_BUTTON:
    if (CancelInstallation()) then
    // Close the dialog box.
    EndDialog (szDialogName);

    // Free the dialog box from memory.
    ReleaseDialog (szDialogName);
    endif;       
    case BACK_BUTTON:
    bDone = TRUE;
    nResult = BACK_BUTTON;
    // Делаем что то
    case TEST_CONNECTION_BUTTON:
    // Делаем что то
    endswitch;
    until bDone;

    // Close the dialog box.
    EndDialog (szDialogName);
    // Free the dialog box from memory.
    ReleaseDialog (szDialogName);

    return nResult;
    end;





    И еще надо знать. Если вы хотите изменить GUI существующего окна (например SdFinish), то программист должен сам написать функцию которая будет управлять этим окном.
     
Загрузка...
Похожие Темы - Installshield работа диалоговыми
  1. duccachannel
    Ответов:
    0
    Просмотров:
    1.198
  2. lmike
    Ответов:
    7
    Просмотров:
    1.374
  3. motogarri
    Ответов:
    2
    Просмотров:
    2.288
  4. iampsd
    Ответов:
    0
    Просмотров:
    2.544
  5. Alex1Aula
    Ответов:
    0
    Просмотров:
    2.019
Статус темы:
Закрыта.

Поделиться этой страницей