Inno Setup (создание инсталяционных пакетов). Часть 2

Статус
В этой теме нельзя размещать новые ответы.

ReFLeXx

Новичок
alex0413,
Точно DirLbl : Longint ? Делаешь вроде всё правильно: создал переменные, получаешь значение позиции изображения.
Вот если DirLbl не Longint, то и будет ошибка ""Type Mismatch" после скобок".
 

aLLeXUs

Участник
ReFLeXx, как-то упустил из виду :( , и почему-то был уверен что это был longint, а это был TLabel. Спасибо.
 
Последнее редактирование:

gocha

Новичок
Компилирую скрипт Бэтмена в Вин7 и функция sndPlaySound не работает, т.е. у кнопок звука нет. В чем может бит проблема?
 

aLLeXUs

Участник
Привет всем! Вопрос. Почему даже созданный в редакторе форм StartMenuFolderTreeView всегда пустой. Я уже и пробовал StartMenuFolderTreeView.Directory:=WizardForm.GroupEdit.Text , но это тоже не помогает.

Вот пример
Код:
[SOURCE="inno"]; Ñêðèïò ñîçäàí ÷åðåç Ìàñòåð Inno Setup Script.
; ÈÑÏÎËÜÇÓÉÒÅ ÄÎÊÓÌÅÍÒÀÖÈÞ ÄËß ÏÎÄÐÎÁÍÎÑÒÅÉ ÈÑÏÎËÜÇÎÂÀÍÈß INNO SETUP!

#define MyAppName "My Program"
#define MyAppVersion "1.5"
#define MyAppPublisher "My Company, Inc."
#define MyAppURL "http://www.example.com/"
#define MyAppExeName "MyProg.exe"

[Setup]
; Ïðèìå÷àíèå: Çíà÷åíèå AppId èäåíòèôèöèðóåò ýòî ïðèëîæåíèå.
; Íå èñïîëüçóéòå îäíî è òîæå çíà÷åíèå â ðàçíûõ óñòàíîâêàõ.
; (Äëÿ ãåíåðàöèè çíà÷åíèÿ GUID, íàæìèòå Èíñòðóìåíòû | Ãåíåðàöèÿ GUID.)
AppId={{2C7402DC-C24C-44AA-B52B-7D6FBEFA7383}
AppName={#MyAppName}
AppVersion={#MyAppVersion}
;AppVerName={#MyAppName} {#MyAppVersion}
AppPublisher={#MyAppPublisher}
AppPublisherURL={#MyAppURL}
AppSupportURL={#MyAppURL}
AppUpdatesURL={#MyAppURL}
DefaultDirName={pf}\{#MyAppName}
DefaultGroupName={#MyAppName}
OutputBaseFilename=setup
Compression=lzma
SolidCompression=yes

[Languages]
Name: "default"; MessagesFile: "compiler:Default.isl"

[Tasks]
Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked

[Files]
Source: "C:\Program Files (x86)\Inno Setup 5\Examples\MyProg.exe"; DestDir: "{app}"; Flags: ignoreversion
; Ïðèìå÷àíèå: Íå èñïîëüçóéòå "Flags: ignoreversion" äëÿ ñèñòåìíûõ ôàéëîâ

[Icons]
Name: "{group}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"
Name: "{commondesktop}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"; Tasks: desktopicon

[Run]
Filename: "{app}\{#MyAppExeName}"; Description: "{cm:LaunchProgram,{#StringChange(MyAppName, '&', '&&')}}"; Flags: nowait postinstall skipifsilent

[ISFormDesigner]
WizardForm=FF0A005457495A415244464F524D0030105B01000054504630F10B5457697A617264466F726D0A57697A617264466F726D0C436C69656E744865696768740368010B436C69656E74576964746803F1010C4578706C696369744C65667402000B4578706C69636974546F7002000D4578706C6963697457696474680301020E4578706C69636974486569676874038E010D506978656C73506572496E636802600A54657874486569676874020D00F10C544E65774E6F7465626F6F6B0D4F757465724E6F7465626F6F6B00F110544E65774E6F7465626F6F6B506167650B57656C636F6D65506167650D4578706C69636974576964746803F1010E4578706C6963697448656967687403390100185453746172744D656E75466F6C64657254726565566965771853746172744D656E75466F6C646572547265655669657731044C65667403B80003546F7003B800055769647468031101064865696768740271085461624F726465720202000000000044D656E75466F6C64657254726565566965771853746172744D656E75466F6C646572547265655669657731044C656674026003546F70027C055769647468031101064865696768740271085461624F72646572020200000000000000

[Code]
{ RedesignWizardFormBegin } // Íå óäàëÿòü ýòó ñòðîêó!
// Íå èçìåíÿòü ýòó ñåêöèþ. Îíà ñîçäàíà àâòîìàòè÷åñêè.
var
  StartMenuFolderTreeView1: TStartMenuFolderTreeView;

procedure RedesignWizardForm;
begin
  { StartMenuFolderTreeView1 }
  StartMenuFolderTreeView1 := TStartMenuFolderTreeView.Create(WizardForm);
  with StartMenuFolderTreeView1 do
  begin
    Name := 'StartMenuFolderTreeView1';
    Parent := WizardForm.WelcomePage;
    Left := ScaleX(184);
    Top := ScaleY(184);
    Width := ScaleX(273);
    Height := ScaleY(113);
    Directory:=WizardForm.GroupEdit.Text;
  end;

  StartMenuFolderTreeView1.TabOrder := 2;

{ ReservationBegin }
  // Âû ìîæåòå äîáàâèòü âàø êîä çäåñü.

{ ReservationEnd }
end;
// Íå èçìåíÿòü ýòó ñåêöèþ. Îíà ñîçäàíà àâòîìàòè÷åñêè.
{ RedesignWizardFormEnd } // Íå óäàëÿòü ýòó ñòðîêó!

procedure InitializeWizard();
begin
  RedesignWizardForm;
end;



[/SOURCE]
 

ReFLeXx

Новичок
alex0413,
Код:
procedure RedesignWizardForm;
begin
  StartMenuFolderTreeView1 := TStartMenuFolderTreeView.Create(WizardForm);
  with StartMenuFolderTreeView1 do
  begin
    Name := 'StartMenuFolderTreeView1';
    Parent := WizardForm.WelcomePage;
    Left := ScaleX(184);
    Top := ScaleY(184);
    Width := ScaleX(273);
    Height := ScaleY(113);
    [B]SetPaths(ExpandConstant('{userprograms}'),ExpandConstant('{commonprograms}'),ExpandConstant('{userstartup}'),ExpandConstant('{commonstartup}'));[/B]
  end;
 

aLLeXUs

Участник
созданный в редакторе форм StartMenuFolderTreeView
и DirFolderTreeView не создает папку если ее не существует. Есть ли какой-то параметр что-бы изменить это или нужнописать вручную создание несуществующей папки?
то есть если у нас путь C:\Program Files (x86)\R.G. BlaBla\Игра то он обрезается до последней существующей папки, и получается C:\Program Files (x86)\Игра, с папкой в меню Пуск так же само, почему R.G BlaBla пропадает?
 
Последнее редактирование:

aLLeXUs

Участник
[STRIKE]
созданный StartMenuFolderTreeView и DirFolderTreeView не создает папку если ее не существует. Есть ли какой-то параметр что-бы изменить это или нужнописать вручную создание несуществующей папки?
то есть если у нас путь C:\Program Files (x86)\R.G. BlaBla\Игра то он обрезается до последней существующей папки, и получается C:\Program Files (x86)\Игра, с папкой в меню Пуск так же само, почему R.G BlaBla пропадает?
поправил ошибку... пересмотрите и помогите...:cry:[/STRIKE]

поиск рулит, ответ нашел здесь на форуме:pardon:
 
Последнее редактирование:

PlayHard

Новичок
Всем привет) хотел спросить, можно ли уменьшить эту область как нибудь, если да напишите пожалуйста как, очень надеюсь что тут помогу
 

shidow

Новичок
PlayHard,
[SOURCE="iss"]
procedure InitializeWizard();
begin
WizardForm.ClientHeight:= ScaleY(100);
end;[/SOURCE]
 

PlayHard

Новичок
напишите или отправьте пожалуйста мне скрипт, чтобы вот не было такого косяка как на скринах, а чтобы всё было на месте где написано "программа установлена ..." (чтобы выбор папки, доп компонентов и тп был на месте где расположено программа установит ... ). Ещё если вам не трудно напишите скрипт чтобы изображение было на всех страницах как на первой, спасибо за внимание.
http://rghost.ru/38795845
 
Последнее редактирование:

LexBell

Борода
Супер модератор
PlayHard, тут все просто. Либо ты делаешь все сам, на форуме спрашиваешь места, которые тебе непонятны. Либо кто-то делает все за тебя, но небесплатно. Сам подумай, зачем тебе что-то делать для кого-то? Третий вариант - если твоя идея по настоящему интересна, то мы напишем этот скрипт и выложим в паблик - оттуда и заберешь. Это единственный вариант самому ничего не делать, а результат получить. Но идея для этого должна быть по настоящему интересна.

Кто-нибудь, переместите во флейм последние посты...
 
Последнее редактирование:

aLLeXUs

Участник
заплатить за скрипт для картинки?
нет. За написание скрипта который ты просишь. Ведь из всего, что ты попытался сделать это в редакторе изменить пару элементов, и пару строчек кода соединить через утилиту соединения скриптов, а то что других просишь - это исправить все недочеты и ошибки, которых достаточно много, и
напишите скрипт чтобы изображение было на всех страницах как на первой
 

Лёха

Участник
Всем привет!!
Решил присоединить ini файлы к скрипту Batman Arkham City v.0.1.8.0, но что то не правильно сделал и функция не работает.
подскажите где я ошибся.
 

AntiAngel

Новичок
Может кто сказать как свою форму инстала сделать.
 
Последнее редактирование:

AntiAngel

Новичок
Подскажите что нужно добавить к BorderStyle:=bsNone; чтобы инсталл сталл кликабельным т.е чтоб он перетаскивался?
 

Adil

Старожил
AntiAngel, если не ошибаюсь, то

Код:
function ReleaseCapture(): Longint; external 'ReleaseCapture@user32.dll stdcall';

procedure LabelOnMouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
  ReleaseCapture;
  SendMessage(WizardForm.Handle,$0112,$F012,0)
end;

procedure InitializeWizard;
begin
with WizardForm do begin
 BorderStyle := bsNone;
 OnMouseDown:=@LabelOnMouseDown;
end;
end;
[/QUOTE]
 
Последнее редактирование:
Статус
В этой теме нельзя размещать новые ответы.
Сверху