Установите Shield 2009 Premier, удаление не закрывает процесс / графический интерфейс - PullRequest
0 голосов
/ 29 мая 2009

Мое приложение (разработанное с использованием C # .net) теперь открыто, я удаляю его, InstallShield выдает сообщение о том, что приложение уже открыто, и действительно ли хотите закрыть приложение. Выбор «Игнорировать» продолжает удаление. Некоторые файлы и exe приложения не закрываются. Как закрыть их, установив щит при удалении. Или есть некоторые свойства, которые я должен установить. Я знаю, добавляя пользовательское действие при деинсталляции, я могу убить процесс, но не должен ли это делать installshield?

Ответы [ 2 ]

0 голосов
/ 12 октября 2009

Если ваш тип проекта MSI InstallScript или он поддерживает Installscript, я предпочитаю написать код для этого, например:

export prototype _Server_UnInstalling();
function _Server_UnInstalling()
STRING Application, ServiceName;
begin    
   //application name 
    Application = "Demo";
    MessageBox("In _Server_UnInstalling",INFORMATION);
    //Check whether application is running or not.
    if ProcessRunning( Application ) then
        MessageBox("Demo is running",INFORMATION);
        //Close server Application 
        ProcessEnd(Application);
    endif;                          

    //if application is having service at the background then 
    ServiceName = "Demo Server";
    //Uninstall the server windows services on uninstallation.
    ServiceRemoveDuringUninstallation(ServiceName);

end;

Приведенный выше пример дает скелет, вам необходимо реализовать логику для методов ProcessRunning, ProcessEnd и ServiceRemoveDuringUninstallation , вы можете ссылаться на справку Installshield, на которую они предоставили документацию, вместе с исходным кодом

надеюсь, это поможет ...

0 голосов
/ 03 июня 2009

Если ваша цель состоит в том, чтобы перезапустить открытые приложения и не соблюдать выбор «Игнорировать», вы можете установить для свойства «REBOOT» значение «Принудительно». Это попросит этого пользователя перезагрузить систему, тем самым достигнув желаемого результата.

...