|
Внимание, важное сообщение: Дорогие Друзья!
В ноябре далекого 2001 года мы решили создать сайт и форум, которые смогут помочь как начинающим, так и продвинутым пользователям разобраться в операционных системах. В 2004-2006г наш проект был одним из самых крупных ИТ ресурсов в рунете, на пике нас посещало более 300 000 человек в день! Наша документация по службам Windows и автоматической установке помогла огромному количеству пользователей и сисадминов. Мы с уверенностью можем сказать, что внесли большой вклад в развитие ИТ сообщества рунета. Но... время меняются, приоритеты тоже. И, к сожалению, пришло время сказать До встречи! После долгих дискуссий было принято решение закрыть наш проект. 1 августа форум переводится в режим Только чтение, а в начале сентября мы переведем рубильник в положение Выключен Огромное спасибо за эти 24 года, это было незабываемое приключение. Сказать спасибо и поделиться своей историей можно в данной теме. С уважением, ваш призрачный админ, BigMac... |
|
| Компьютерный форум OSzone.net » Автоматическая установка Windows » Автоматическая установка приложений » [архив] Скрипты Inno Setup. Помощь и советы [часть 2] |
|
|
[архив] Скрипты Inno Setup. Помощь и советы [часть 2]
|
|
Ветеран Сообщения: 1133 |
Лимит страниц.
Тема закрыта. Продолжение по ссылке Скрипты Inno Setup. Помощь и советы [часть 3] Внимание! Данная тема предназначена только для обсуждения написания скриптов ! Остальные вопросы, а также последние версии компилятора в теме Inno Setup. Прочие вопросы. Ссылка на архив предыдущей темы (также можно скачать из вложения) |
|
|
------- Отправлено: 22:06, 23-08-2009 |
|
Новый участник Сообщения: 36
|
Профиль | Отправить PM | Цитировать Друзья, посмотрите скрипт: http://rghost.ru/1959537
У меня во время распаковки freearc ошибку выдает((( |
|
Отправлено: 21:15, 22-06-2010 | #1981 |
|
Сообщения: 3650
|
Профиль | Сайт | Отправить PM | Цитировать CrOsP, вот, пробуй
![]() [code]
//вешаем ссылку на подпись
var
MouseLabel,SiteLabel: TLabel;
procedure SiteLabelOnClick(Sender: TObject);
var
ErrorCode: Integer;
begin
ShellExec('open', 'http://game.dnet.com.ua', '', '', SW_SHOWNORMAL, ewNoWait, ErrorCode)
end;
procedure SiteLabelMouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
SiteLabel.Font.Color:=$0000C8FF
end;
procedure SiteLabelMouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
SiteLabel.Font.Color:=$000080FF
end;
procedure SiteLabelMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer);
begin
SiteLabel.Font.Color:=$0000A0FF
end;
procedure SiteLabelMouseMove2(Sender: TObject; Shift: TShiftState; X, Y: Integer);
begin
SiteLabel.Font.Color:=$000080FF
end;
// Importing LoadSkin API from ISSkin.DLL
procedure LoadSkin(lpszPath: String; lpszIniFileName: String);
external 'LoadSkin@files:isskin.dll stdcall';
// Importing UnloadSkin API from ISSkin.DLL
procedure UnloadSkin();
external 'UnloadSkin@files:isskin.dll stdcall';
// Importing ShowWindow Windows API from User32.DLL
function ShowWindow(hWnd: Integer; uType: Integer): Integer;
external 'ShowWindow@user32.dll stdcall';
function InitializeSetup(): Boolean;
begin
ExtractTemporaryFile('Office2007.cjstyles');
LoadSkin(ExpandConstant('{tmp}\Office2007.cjstyles'), '');
Result := True;
end;
procedure InitializeWizard();
begin
WizardForm.Position:= poScreenCenter; //отключение о программе
//вешаем ссылку
MouseLabel:=TLabel.Create(WizardForm)
MouseLabel.Width:=WizardForm.Width
MouseLabel.Height:=WizardForm.Height
MouseLabel.Autosize:=False
MouseLabel.Transparent:=True
MouseLabel.OnMouseMove:=@SiteLabelMouseMove2
MouseLabel.Parent:=WizardForm
SiteLabel:=TLabel.Create(WizardForm)
SiteLabel.Left:=10
SiteLabel.Top:=330
SiteLabel.Cursor:=crHand
SiteLabel.Font.Color:=$000080FF
SiteLabel.Caption:='Наш сайт game.dnet.com.ua'
SiteLabel.OnClick:=@SiteLabelOnClick
SiteLabel.OnMouseDown:=@SiteLabelMouseDown
SiteLabel.OnMouseUp:=@SiteLabelMouseUp
SiteLabel.OnMouseMove:=@SiteLabelMouseMove
SiteLabel.Parent:=WizardForm
end;
procedure DeinitializeSetup();
begin
// Hide Window before unloading skin so user does not get
// a glimpse of an unskinned window before it is closed.
ShowWindow(StrToInt(ExpandConstant('{wizardhwnd}')), 0);
UnloadSkin();
end;
|
|
------- Отправлено: 21:26, 22-06-2010 | #1982 |
|
Старожил Сообщения: 267
|
Профиль | Отправить PM | Цитировать Habetdin, Спасибо вам , вы как всегда помогли . Спасибо огромное
|
|
------- Отправлено: 22:20, 22-06-2010 | #1983 |
|
Новый участник Сообщения: 5
|
Профиль | Отправить PM | Цитировать Здравствуйте. Inno Setup очень хорошо обращается с ini файлами, жалко с xml так нельзя.
Мне нужно в конце установки найти в XML файле строчку и заменить ее на Возможно ли это сделать силами самой inno? |
|
Отправлено: 02:44, 24-06-2010 | #1984 |
|
Ветеран Сообщения: 1640
|
Профиль | Отправить PM | Цитировать Цитата Schemer:
procedure RePlaceTextinFile(FilePath:string; find:string; replace:string);
var
S: TArrayOfString;
//str : string;
i : Integer;
begin
if not FileExists(FilePath) then begin MsgBox('Файл не найден', mbError, mb_Ok); Exit;end; // если файла нет, выходим
LoadStringsFromFile(FilePath, S); // загружаем файл
for i:= 0 to GetArrayLength(S)-1 do begin
if (Pos(AnsiUpperCase(find), AnsiUpperCase(S[i])) > 0) then begin
StringChangeEx(S[i], find, replace, True);
end;
end;
SaveStringsToFile(FilePath, S, False); // сохраняем файл
end;
|
|
|
------- Отправлено: 08:36, 24-06-2010 | #1985 |
|
Новый участник Сообщения: 5
|
Профиль | Отправить PM | Цитировать |
|
Отправлено: 20:01, 24-06-2010 | #1986 |
|
Новый участник Сообщения: 2
|
Профиль | Отправить PM | Цитировать Пользуюсь Inno Setup первый раз.
Задаю параметры DefaultGroupName=Программа расчета DisableProgramGroupPage=no Цель - создание в меню Пуск раздела с документацией и деинсталятором. Не могу добиться чтобы в меню Пуск была создана соответствующая папка, страница с запросом на создание/изменение тоже не показывается. Инсталирую DLL (COM-сервер) и документацию к нему. Указал все файлы в разделе [Files], может этого не достаточно? |
|
Отправлено: 03:51, 25-06-2010 | #1987 |
|
Новый участник Сообщения: 5
|
Профиль | Отправить PM | Цитировать Что бы показывалась страница на создание/изменение папки в меню пуск, точно не помню, по моему нужно поставить yes в
А вот что бы ярлыки создавались, их надо прописать в секции [Icons]: |
|
Отправлено: 05:28, 25-06-2010 | #1988 |
|
Ветеран Сообщения: 1640
|
Профиль | Отправить PM | Цитировать Цитата Schemer:
Вот мой код использования этой процедуры RePlaceTextinFile(ExpandConstant('{app}\x264\Megui\allprofiles\AviSynth\AviSynth_dp_ FFT3DGPU.xml'), 'import("', 'import("'+plugindir2_5+'\');
plugindir2_5 вычисляется чуть выше (берется из реестра) В вашем случае |
|
|
------- Отправлено: 08:27, 25-06-2010 | #1989 |
|
Новый участник Сообщения: 2
|
Профиль | Отправить PM | Цитировать Schemer, спасибо за подсказку!
У меня в голове Icons ни как не ассоциировалось со списком файлов в меню Пуск. Подсказка помогла. Наверное более уместным было бы название секции Items. |
|
Отправлено: 15:48, 25-06-2010 | #1990 |
|
|
Участник сейчас на форуме |
|
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
| Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
| Скрипты Inno Setup. Помощь и советы [часть 3] | Serega | Автоматическая установка приложений | 3755 | 26-10-2011 17:58 | |
| [архив] Inno Setup .:[все вопросы]:. | Mchik | Автоматическая установка приложений | 1329 | 23-08-2009 20:13 | |
| [архив - Часть 2] AutoIt скрипты | Vadikan | AutoIt | 985 | 21-01-2008 09:58 | |
| Скрипты Inno Setup Compiler | QAZAK | Автоматическая установка приложений | 7 | 15-01-2007 17:59 | |
| [Архив - Часть 1.1] AutoIt скрипты | EgOrus | AutoIt | 335 | 04-02-2006 16:58 | |
|