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

Компьютерный форум OSzone.net » Автоматическая установка Windows » Автоматическая установка приложений » Скрипты Inno Setup. Помощь и советы [часть 7]

Закрытая тема
Настройки темы
Скрипты Inno Setup. Помощь и советы [часть 7]

Аватара для El Sanchez

Ветеран


Contributor


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


Конфигурация

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


Изменения
Автор: El Sanchez
Дата: 16-02-2015
Внимание! Данная тема предназначена только для обсуждения написания скриптов !
Остальные вопросы, а также последние версии компилятора в теме
Inno Setup. Прочие вопросы.


Показать/скрыть: Справка, руководство, примеры:

Показать/скрыть: Ссылки на примеры скриптов:

Показать/скрыть: Дополнительные программы для Inno Setup:
  • ISTool - неплохой редактор скриптов Inno Setup.
    Последняя версия: 5.3.0.1 [29.09.2009] - Скачать | зеркало;

  • Inno Script Generator - генератор скриптов Inno Setup. Обладает некоторыми полезными функциями, которых нет ни у самого Inno Setup, ни у ISTool.
    Последняя версия: 1.0.3.1 [23.03.2008] - Скачать | зеркало на русифицированную программу;
    Примечание: Родной сайт www.hisoft2000.de более недоступен, поэтому здесь расположены сторонние ссылки.

  • Inno Setup Form Designer - редактор страниц Inno Setup, можно создавать свои страницы.
    Последняя версия: 2.0.8 [12.11.2006] - Скачать;
    Примечание: Родной сайт http://isfd.kaju74.de/index.php?isfd более недоступен, поэтому здесь расположены сторонние ссылки.

  • Inno Setup GameScript Generator - программа генерирует скрипты для Inno Setup . С помощью GameScript Generator и Inno Setup вы сможете быстро создать простенький инсталляционный пакет для любой игры. В инсталлятор можно встроить музыку, слайдшоу и фоновый рисунок. Для специалистов созданный скрипт, возможно, будет неплохой заготовкой для дальнейшей модернизации;

  • ISSkin - Программа для создания и добавления в инсталлятор скинов. Инструкция.
    Последняя версия: 3.0.0.0 [19.01.2010] - Скачать;

  • ISSJoiner - Программа для объединения нескольких скриптов InnoSetup в один.
    Последняя версия: 3.0 [23.07.2009]

  • Converter - Программа конвертирует reg-файлы в формат *.iss (формат скриптов Inno Setup).
    Последняя версия: 0.1.4 [13.03.2010] - Скачать;

  • RegExporter - Фриварная утилита для экспорта реестра и конвертации файлов *.reg и *.ini в инсталляционные скрипты Inno Setup и NSIS.
    Последняя версия: 1.2.0 [23.09.2014] - Скачать;



Предыдущие ветки обсуждения по ссылкам ниже и в прикреплённых архивах:

Скрипты Inno Setup. Помощь и советы [часть 6]

Отправлено: 11:48, 10-03-2014

 

Аватара для Ivan_009

Ветеран


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

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


Цитата Dodakaedr:
интересует как вывести только кнопку "закрыть"? »
Dodakaedr, Пример:

Код: Выделить весь код
function GetClassLong(Wnd: HWnd; Index: Integer): Longint; external 'GetClassLongA@user32.dll stdcall';
function SetClassLong(Wnd: HWnd; Index: Integer; NewLong: Longint): Longint; external 'SetClassLongA@user32.dll stdcall';

procedure Close;
begin
  SetClassLong(Wizardform.Handle, -26, GetClassLong(Wizardform.Handle, -26) or $200);
end;

procedure InitializeWizard;
begin
  Close;
  WizardForm.Position:= poScreenCenter;
end;
Это сообщение посчитали полезным следующие участники:

Отправлено: 22:07, 01-04-2014 | #191



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Аватара для Dodakaedr

Ветеран


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

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


Цитата El Sanchez:
SID или имя залогиненного пользователя можете узнать так:
Код: Выделить весь код
#define A = (Defined UNICODE) ? "W" : "A"
const
    WTS_CURRENT_SERVER_HANDLE = 0;
    WTS_CURRENT_SESSION = (-1);
    WTSUserName = 5;

function WTSQuerySessionInformation(hServer: THandle; SessionId, WTSInfoClass: DWORD; var ppBuffer: Longint; var pBytesReturned: DWORD): BOOL; external 'WTSQuerySessionInformation{#A}@wtsapi32.dll stdcall';
procedure WTSFreeMemory(pMemory: Longint); external 'WTSFreeMemory@wtsapi32.dll stdcall';

///////////////////////////////////////////////////////
function GetLoggedOnUser(const IsSID: Boolean): String;
var
    i: Integer;
    aNames: TArrayOfString;
    dwLength: DWORD;
    lpBuffer: Longint;
begin
    if not RegGetSubkeyNames(HKLM, 'SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList', aNames) then Exit;
    try
        if not WTSQuerySessionInformation(WTS_CURRENT_SERVER_HANDLE, WTS_CURRENT_SESSION, WTSUserName, lpBuffer, dwLength) then Exit;
        Result := CastIntegerToString(lpBuffer);
        if IsSID then for i := 0 to GetArrayLength(aNames)-1 do if Pos(Lowercase(Result), LowerCase(ExpandConstant(Format('{reg:HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList\%s,ProfileImagePath|}', [aNames[i]])))) > 0 then
        begin
            Result := aNames[i];
            Break;
        end;
    finally
        WTSFreeMemory(lpBuffer);
    end;
end;

/////////////////////////////
procedure InitializeWizard();
begin
    MsgBox(GetLoggedOnUser(False), mbInformation, MB_OK);
    MsgBox(GetLoggedOnUser(True), mbInformation, MB_OK);
end;
Как с помощью этого кода занести ключ регистрации в HKEY_USERS\S-1-5-21-2866158627-181887668-3254620381-500\Software\TotalImageConverter...????
Код: Выделить весь код
Root: HKU; SubKey: S-1-5-21-2866158627-181887668-3254620381-500\Software\TotalImageConverter; ValueType: string; ValueName: Key; ValueData: 0r/1GkAO/GMNgF5gip+qjw0OmwHwWCAw73h0I2eO/k6wRVs8HEWGdKK2BOVGxJvFmY3aD6pFMBveZb87Jht+hNWdqXcyekWPDvm3RstdisI6BSJy0UW8wtKQa217TKPbReCRXL38Z5YD9gyu0B68h2dV9yPzo; Flags: uninsdeletevalue uninsdeletekeyifempty
Где "S-1-5-21-2866158627-181887668-3254620381-500" SID пользователя. Или подскажите другие способы решения этой задачи.....

Цитата Ivan_009:
Пример: »
Не работает, наверное из-за того что использую скин (XPOSX7.cjstyles). Как исправить?

-------
Inno Setup 5 Ultra Unicode


Последний раз редактировалось Dodakaedr, 02-04-2014 в 08:35.


Отправлено: 22:13, 01-04-2014 | #192


Аватара для Gnom_aka_Lexander

Ветеран


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

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


Цитата Dodakaedr:
как вывести только кнопку "закрыть"? »
так:
Код: Выделить весь код
procedure InitializeWizard();
begin
  WizardForm.BorderIcons := [biSystemMenu];
end;
или так:
Код: Выделить весь код
procedure InitializeWizard();
begin
  WizardForm.BorderStyle := bsDialog;
end;

-------
Я люблю помогать. Но не путайте: "Помогите мне" и "Сделайте за меня" - это совершенно разные понятия.


Отправлено: 08:46, 02-04-2014 | #193


Аватара для Dodakaedr

Ветеран


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

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


Gnom_aka_Lexander, и эти способы не выводят кнопку.

-------
Inno Setup 5 Ultra Unicode


Отправлено: 08:52, 02-04-2014 | #194


Аватара для Gnom_aka_Lexander

Ветеран


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

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


Dodakaedr, если ты удаляешь все кнопки, то вывести не выйдет. нужно не вместе, а вместо.

-------
Я люблю помогать. Но не путайте: "Помогите мне" и "Сделайте за меня" - это совершенно разные понятия.


Отправлено: 09:05, 02-04-2014 | #195


Аватара для Dodakaedr

Ветеран


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

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


Цитата Gnom_aka_Lexander:
Код: Выделить весь код
procedure InitializeWizard();
begin
 WizardForm.BorderStyle := bsDialog;
end;
»
Этот вариант работает если не использовать скин, а со скином как сделать?

Отправлено: 09:07, 02-04-2014 | #196


Аватара для Gnom_aka_Lexander

Ветеран


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

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


Dodakaedr, скрипт свой с файлами залей куда-нибудь. должно и со скином все работать.

-------
Я люблю помогать. Но не путайте: "Помогите мне" и "Сделайте за меня" - это совершенно разные понятия.


Отправлено: 09:09, 02-04-2014 | #197


Аватара для Dodakaedr

Ветеран


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

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


Цитата Gnom_aka_Lexander:
скрипт свой с файлами залей куда-нибудь »
http://rghost.ru/53703721

Отправлено: 09:21, 02-04-2014 | #198


Аватара для Gnom_aka_Lexander

Ветеран


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

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


Dodakaedr, у тебя в скрипте:
Код: Выделить весь код
  with WizardForm do
  begin
    BorderIcons := [biMinimize];
    Caption := '{#MyAppName} {#MyAppVersion}';
  end;
biMinimize срабатывет только вместе с biMaximize, и как я уже писал - нужно не вместе, а вместо. В твоем случае, там должно быть не biMinimize а biSystemMenu.

-------
Я люблю помогать. Но не путайте: "Помогите мне" и "Сделайте за меня" - это совершенно разные понятия.


Отправлено: 09:25, 02-04-2014 | #199


Аватара для Dodakaedr

Ветеран


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

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


Цитата Gnom_aka_Lexander:
biMinimize срабатывет только вместе с biMaximize, и как я уже писал - нужно не вместе, а вместо. В твоем случае, там должно быть не biMinimize а biSystemMenu. »
Спасибо, но это не то что хотел, при использовании biSystemMenu появляется полное системное меню, а мне нужно только кнопка закрыть, как оно срабатывает без скина.

-------
Inno Setup 5 Ultra Unicode


Отправлено: 09:30, 02-04-2014 | #200



Компьютерный форум OSzone.net » Автоматическая установка Windows » Автоматическая установка приложений » Скрипты Inno Setup. Помощь и советы [часть 7]

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Скрипты Inno Setup. Помощь и советы [часть 6] El Sanchez Автоматическая установка приложений 2494 10-03-2014 11:51
Скрипты Inno Setup. Помощь и советы [часть 5] El Sanchez Автоматическая установка приложений 1999 28-03-2013 19:09
Скрипты Inno Setup. Помощь и советы [часть 4] El Sanchez Автоматическая установка приложений 2099 22-05-2012 23:16
Скрипты Inno Setup. Помощь и советы [часть 3] Serega Автоматическая установка приложений 3755 26-10-2011 17:58
[архив] Скрипты Inno Setup. Помощь и советы [часть 2] Serega Автоматическая установка приложений 2651 08-11-2010 18:34




 
Переход