UNPKG

innosetup-compiler-note

Version:
349 lines (301 loc) 16.4 kB
Inno Setup ��һ����ѵ� Windows ��װ����������������һ�η������� 1997 �꣬ Inno Setup �����ڹ������ú��ȶ����ϵľ����������Ѿ�����һЩ��ҵ�İ�װ���������� ���� ������Ϊ������ǿ�棬���в����Ĵ���ԭ���ϲ����� Inno Setup ԭ���߲����� ͬʱ������޸ĺ�İ汾��Ҳ����е��κ��û���ʹ�ù����в����������ɵ���ʧ�� �汾��ʷ�� ��Ϊ��װ�������[Setup.e32]�漰��װ�����С�����Խ�����ÿ�����°汾�б��� [Setup.e32] �Ĵ�С���Է����λ�ܷ����ж��Ƿ��б�Ҫʹ����ǿ�棬������˵�����û�� ʹ�õ���ǿ��Ĺ��ܣ�����ʹ��ԭ�氲װ�������[Setup.e32]����Ϊÿ����һ����ļ� ��С�������������� ��ǿ��û��������������ԭ�����㺺���ģ���Ϊ�������ĵ� Unicode ��˵������Ӣ�ĵ�Ҫ �̣��������������Ϊ��װ�������[Setup.e32]��ʡ��� 6~8 KB ��С������Ϊ���ܺܺ� �����κ�ϵͳ�����ж����԰�װ����(������Ҳ�����У�ֻ������ʾ��Ϣ�ڷ�������ϵ��ϵ ͳ�л������ʾ��Ϣ����)������δ�������� �����ɰ�װ�����ᾭ��ѹ���㷨ѹ�����ļ��Ĵ�С��ѹ������ٳ���һ���С�� ��֮ǰ����༭����ǿ�治ͬ������༭���޹ذ�װ�����С�������Ҳ����������Ĵ�С�� ���Ǹð�װ��������ϵ����װ�����С����ʱ�����Ϊ��ͬ�Ĺ��ܺͲ�ͬ�Ĵ�С��ȥѡ�� ijһ�� build �汾������Ϊ�˷�����ѡ���κ�һ�� build �汾���Ҿ����ܵı����κ�һ�� build �汾�������Ǹ��汾���ڴ��󽫲��ᱣ����������°汾��֮ǰ�İ汾ҪС����ô֮ ǰ���а汾Ҳ�����ᱻ������ build 080805 1.Components ����б��ؼ����޸�Ϊ TreeView ģʽ�����������漸����ʾ����(����ԭ�� �߷��ֲ��������������� - �� 2000/XP/2003 �����£��������ʹ�ֱ��������ҳ���� ���һ��������Ӿ�Ч���������б����෴���������������ֻ������������Ч������ ������ҳ��������ע�ͣ���Ϊ��̫���ԣ�����δ����������ԭ���߲���ģ��ķ��������� ����ϵͳЧ��������ȫһ�����������ڹ���ʱ����ʾ�ٶ��ϣ������������޸����������� ������й����Ӿ�Ч�����⣬������������Ч����λ���������ԶԱ�һ�¾�֪��)���� Ȼ����б����޸�Ϊ TreeView ģʽ��������Ȼ֧��ԭ������ʾģʽ��TreeView ģʽֻ ��Ϊһ����װѡ�����������ʹ�÷������Ľű����ӡ� 2.�����ڲ�֧�ֺ���( function GetPassword: String; )�緢�ֽű����ڸú�����ͬʱ�� �����ṩ����������ȷ��ʱ�򣬻��Զ����� Password ����ҳ�棬ͬʱ�ú������������� �ͷ��ļ���������������Ϊ��ʼ��װʱ�ͷŵ��ļ����� noencryption ��ǡ�����ʹ�÷� ����ο������Ľű����ӡ���Ҫ����ģ�� ISCrypt.dll ֧�֡� build 080815 1. property ItemHeightFixed: Boolean; read write; ��������Ϊ True���Ե��и���ʾÿ���ʾ����ȫ�Ŀ����� Hint ��ʾ����һ�С� 2. TItemArea = (iaOther, iaButton, iaCheckmark, iaItem, iaSubItem); TItemMouseMoveEvent = procedure(Sender: TObject; X, Y: Integer; Index: Integer; Area: TItemArea); property OnItemMouseMove: TItemMouseMoveEvent; read write; ����һ���� Item ���ƶ������¼��� 3. property AbsItemIndex: Integer; read; ��ǰ��������� AbsItemIndex�� 4. �ڲ��ȸ�����£���Ȼά��ԭ���ߵĹ����Ӿ���������� �����ѡ��ľ���ʹ�����������Ѿ���ϸ���ͣ�����Ͳ�������ϸ�Ľ����ˡ� build 080816 1. ָ������չ�������������� property ItemExpanded[Index]: Boolean; read write; 2. �Ƿ���û�н�����������Ȼ��ʾ��ѡ����� property HideSelection: Boolean; read write; ʹ�÷��������ӡ� build 080914 ����ԭ����еĴ��������Dz��ְ������ἰ�����֧�֣�������ʾ����Ҫ�� CheckListbox ����ʾ�� build 081121 TNewCheckListBox ���� 2 �����ԡ� property ItemFontStyle[Index: Integer]: TFontStyles; read write; property SubItemFontStyle[Index: Integer]: TFontStyles; read write; build 081207 1. �޸� GetPassword ���塣 2. ���� 1 ���������ú��� SetPassword������ʹ�÷������Բο����ӡ� procedure SetPassword(const Password: String); build 090222 ���� FullVCL �汾�ı���������Ϊȫ���Ա���汾��ӵ�и�����¼����������磺 OnMouseDown��OnMouseUp��OnMouseMove �ȵȣ���ӵ�и���� VCL �ؼ�ʹ�á����磺 TTimer, Application, TMenu �ȵȡ� build 090225 ���� TScreen ����� ���� Application.OnMessage �¼��� ���� procedure Randomize; ������ �����˼�����Ȥ�����ӡ� build 090225 FullVCL �汾����: ���� TImageList, TIcon, TTreeView, TListView ����� build 090424 1. ���� Delphi 2.0 ����ij���� Hint ��ʾЧ��������Ϊ��ͳ�� Windows ��ʽ�� 2. ���� Delphi 2.0 ����İ�װ��������С��ʱ�Ķ�̬��СЧ����ʾ���⡣ 3. ���� TNewCheckListBox.LoadBtnBmpFromFile ���������Զ��� RadioButtn �� CheckBox �İ�ťͼƬ��ͬʱ�� [Setup] ������ѡ�� ComponentsListBtnImageFile�����ܸ�ǰ��˵ ��һ�������������Զ��尴ťͼƬ�� 4. ���� TFolderTreeView.ShowAllFolders ���ԣ�����ʾ�����ļ���(����ϵͳ��������) 5. ���� Inno Setup �� PrivilegesRequired=admin ʱ(����Ĭ��ѡ��ɲ�����ȷ����) ��ͬʱ���ð�װ����� Manifest �е� requestedExecutionLevel level=requireAdministrator ����Ӧ Vista ���ڷǹ���Ա״̬�����а�װ�����Զ���ʾ�������Ա���롣 FullVCL �汾����: 1. ͬ������ MiniVCL ���¡� 2. ɾ���� TGroupBox ��֧�֣���Ϊ���� Delphi 2.0 �б��벻֧�� XP ���⣬���´��� һ��֧�� XP �������� TNewGroupBox�� 3. ɾ���� TRadioGroup ��֧�֣���Ϊ������ TNewGroupBox �� TNewRadioButton ����ɡ� 4. ɾ���� TNotebook ��֧�֣���Ϊ�Ѿ��� TNewNotebook ����ʹ�á� 5. ɾ���� THeader ��֧�֣���Ϊ����֧�� XP ���⣬������� THeaderControl (֧��XP����)�� 6. ���� Delphi 2.0 ����� TTreeView �� TListView �� XP �����µı߿���ʾ���⡣ 7. ɾ���� TImage ��֧�֣����� TNewIcon, TNewIconImage ��������� TBitmapImage�� �������� Icon������֧�����ͼ�ꡣ 8. ���� TForm �� TApplication ����� Icon ���ԡ� 9. ���� TTrackBar, TUpDown, THotKey, TTabControl, TPageControl ����� 10. ������������� PopupMenu ���ԡ� 11. �������� �˵������� �������˼�����Ȥ�����ӣ�ϣ��ϲ�� Inno Setup �����ѻ���ӵ�ϲ�������װ�������� build 090926 ͬ���� InnoSetup 5.3.5 ���룬ISPP ͬ���� 5.3.5 ���롣 MiniVCL �汾����: 1. ���� CheckListBox �� Showroot ʱ�����ߵ�ССʧ�� 2. ���� TRichEditViewer ������ģʽ�µı߿���ʾ���⡣ 3. ����һ������ CallbackAddr��ֱ��֧�ֽű�ʹ�ûص������� 4. TNewCheckbox ֮ǰ��ǿ�� AddCheckBox��AddGroup��AddRadioButton �������ỹԭ�� ԭ�������ӣ���ǿ�Ĺ��ܱ��ֲ�Ϊ AddCheckBoxEx��AddGroupEx��AddRadioButtonEx�� �Ա�֤��ԭ�� Inno Setup �ű��ļ����ԡ� FullVCL �汾����: ͬ�� MiniVCL ���޸ġ� 1. ���� TForm.Menu ���ԡ� Unicode �汾: ͬ�� ANSI �汾�ĸ��¡���չһЩ������ԡ����忴���Ӻ� Support Classes.txt�� ISPP �汾����: 1. ������ǿ����ڲ���־ #define IS_ENHANCED 2. ���������ڲ������� IS_Ver_Str: String; // ���� Inno Setup �������İ汾�ַ����� ISPP_Ver_Str: String; // ���� ISPP �İ汾�ַ����� build 091123 ͬ���� 5.3.6 �汾�� MiniVCL �汾����: �������� 2 �������������ص��ǿ��Ի�ͼ����ܵ���ʱ�� function MsgBoxEx(AWnd: HWND; AText, ACaption: string; AType, AIcon: UINT; ATimeOut: Integer): Integer; function InputBoxEx(AWnd: HWND; AText, ACaption, ADefaut, APasswordChar: string; AIcon: UINT; AWidth, AHeight, ATimeOut: Integer; var AResultStr: String): Boolean; FullVCL �汾����: ͬ�� MiniVCL ����, ���� TNewMonthCalendar �� TNewDateTimePicker ��������ʱ��ؼ�,���������º���: function Date: TDateTime; function DateTimeToStr(DateTime: TDateTime): String; procedure DateTimeToString(var Result: String; const Format: String; DateTime: TDateTime); function DateToStr(Date: TDateTime): String; function DayOfWeek(Date: TDateTime): Integer; procedure DecodeDate(Date: TDateTime; var Year, Month, Day: Word); procedure DecodeTime(Time: TDateTime; var Hour, Min, Sec, MSec: Word); function EncodeDate(Year, Month, Day: Word): TDateTime; function EncodeTime(Hour, Min, Sec, MSec: Word): TDateTime; function FormatDateTime(const Format: String; DateTime: TDateTime): String; function Now: TDateTime; function StrToDate(const S: String): TDateTime; function StrToDateTime(const S: String): TDateTime; function StrToTime(const S: String): TDateTime; function Time: TDateTime; function TimeToStr(Time: TDateTime): String; ��������һЩС�������� build 100108 ͬ���� 5.3.7 �汾�� MiniVCL �汾����: ANSI�汾��������״̬�µ���ʾ�ᵼ�±����Գ����˳������ԭ���������ġ� FullVCL �汾����: ͬ�� MiniVCL ����, ���� TIPAddressEdit �ؼ��� build 100210 MiniVCL �汾����: TNewCheckbox, TNewRadioButton ���� ParentBackground ���ԡ� FullVCL �汾����: ͬ�� MiniVCL ����, TNewGroupBox ���� ParentBackground ���ԣ�THotkey ���� Color��ParentColor��Font��ParentFont ���ԡ� ���� TStatusbar �ؼ��� Unicode �汾�� TNewStaticText ���� Transparent ���ԡ� Unicode �汾�лָ��� Interface ��֧�֣�����ɲ��Ա��� Inno Setup �����е� CodeAutomation2.iss ���ӡ� build 100224 (5.3.8.e1 & 5.3.8.ee1) ͬ���� 5.3.8 �汾�� ���� TNewCheckListbox �е�һ�����⡣ ���Ӻ��� procedure ExtractTemporaryFileEx(const FileName: String; const DestDir: String); build 100301 (5.3.8.e2 & 5.3.8.ee2) �������� TNewCheckbox.ParentBackground, TNewRadioButton.ParentBackground�� TNewGroupBox.ParentBackground �Ĵ��������� �������� CallbackAddr ��ijЩ Windows ƽ̨(����: Windows XP SP3)���ֲ����������е����⡣ ����ʹ�÷����ɲο����ӣ�Example_Callback_1.iss �� Example_Callback_2.iss build 100323 (5.3.8.e3 & 5.3.8.ee3) �����Ҫ����� Unicode �汾�������� 1. ���� PAnsiChar ���͵������� 2. ������ Win2000 ϵͳ��(���� SP)�����������е����⣬�� CVS ��������������� ��һ�汾�ģ���Ϊ����Ƚ���Ҫ����������ǰ�� 5.3.8 ����Ӧ�����ˡ� build 100418 (5.3.9.e1 & 5.3.9.ee1) ͬ���� 5.3.9 �汾�� build 100613 (5.3.10.e1 & 5.3.10.ee1) ͬ���� 5.3.10 �汾�� build 100625 (5.3.10.e2 & 5.3.10.ee2) 1. Ϊ��� ISSkin ��Ӧ��, TRichEditViewer �������� ThemeBorder , Ĭ�ϱ���Ϊ True, ����Ϊ False ʱ, �ؼ��߿���Ա� ISSkin Ӧ������. 2. TBitmapImage ���޸�, �� BackColor �� ReplaceWithColor ����ɫ��Ϊ clNone ��ʱ��, ������ ReplaceColor ��ΪͼƬ��͸��ɫʹ��. TNewIconImage ���޸�, �� BackColor ����ɫΪ clNone ��ʱ��, ����������͸����. ����ɲ鿴���� Example_TransparentBmp.iss build 100918 (5.3.11.e1 & 5.3.11.ee1) 1. ͬ���� 5.3.11 �汾�� 2. MiniVCL �汾������: TMemoryStream �� TResourceStream �� 3. ���Ӻ��� ExtractTemporaryFileToStream, �ɰ���ʱ�ļ��ͷŵ��ڴ���ʹ�á� ����ɲ鿴���� Example_ExtractTemporaryFileToStream.iss 4. ����һ�������� build 101107 (5.4.0.e1 & 5.4.0.ee1) ANSI �汾�� 1. ͬ���� 5.4.0 �汾�� 2. ���Ӻ��� ExtractTemporaryFileToBuffer, �ɰ���ʱ�ļ��ͷŵ��ڴ���ʹ�á� ����ɲ鿴���� Example_ExtractTemporaryFileToBuffer.iss 3. Unicode �汾���Ӻ��� CastAnsiStringToInteger �� CastIntegerToAnsiString�� ��� ExtractTemporaryFileToBuffer ����ʹ�á� build 101129 (5.4.0.e2 & 5.4.0.ee2) 1. ��������ʱ���� {apphwnd}, �൱�� Application.handle, �������ⳡ��ʹ��, ����ɲο����� Example_{apphwnd}.iss�� 2. Ϊ���ж�ؽ�����Զ���, ��������˼��, ������ڰ�װ�����ṩһ������ PerformPreviousUninstall, ����һ�����ڰ�װ�����е��õ�ж�غ���, �����Զ� ���֮ǰ��װ�ij���, ���Ҹ���ж�ص������ļ�����ж�صĺ�����Ϊ��ϴ˺���, ͬʱ�ṩ 2 ������ GetSetupPreviousData �� SetSetupPreviousData, ������ GetPreviousData �� SetPreviousData, ����ǰ 2 �������IJ㼶����, ���Է���ǰ ��װ�����ж��ע�����Ϣ(���� UninstallString, InstallLocation �ȵ�), ���Բ��� 2 ������: Example_Uninstall_1.iss �� Example_Uninstall_2.iss ���������ӳ�������� PerformPreviousUninstall ���û��ɶ��Ʒ�������ɶ�, ��ֻ�ǰ��������þ�����, ��ʵ����ȫ��������Ϊ��Ϊ���ӵĶ��ư�װж�ع��ܡ� build 110111 (5.4.0.e3 & 5.4.0.ee3) ANSI �汾�� 1. ExtractTemporaryFile, ExtractTemporaryFileEx, ExtractTemporaryFileToStream ExtractTemporaryFileToBuffer �� 4 ��������֧���ļ���ŷ�ʽ���ͳ��ļ��� ����ʹ������ͬĿ���ļ����ֵ��ļ����԰��սű�˳��λ��ʹ�����磺 ExtractTemporaryFile('logo.bmp:1') �����ķ�ʽ���ͳ�������ɲ������� Example_ExtractTemporaryFile.iss �� 2. MiniVCL �汾�� TBitmap �������º���: procedure LoadFromResourceName(Instance: THandle; const ResName: String); procedure LoadFromResourceID(Instance: THandle; ResID: Integer); 3. FullVCL �汾�� TNewIcon �������º���: procedure LoadFromResourceName(Instance: THandle; const ResName: String); procedure LoadFromResourceID(Instance: THandle; ResID: Integer); 4. MiniVCL �汾�� TStrings �������º���: procedure LoadFromStream(Stream: TStream); procedure SaveToStream(Stream: TStream); 5. MiniVCL �汾�� TForm �������� property ModalResult: Longint; read write; 6. Setup �����Ӳ��� BitmapResource, IconResource, RawDataResource , �� 3 ������ ��Ҫ���ڰ�װ������������Դ�ļ�, ��������ҲΪж�س����ṩ����Ч��ͼ����Դ�͸� ���ļ���Դ�Ŀ�����, ͬʱҲά����һ��ij���ĵ��ļ��ԡ�������Բ��� Example_BitmapResource.iss�� Example_IconResource_1.iss�� Example_IconResource_2.iss Example_RawDataResource.iss 7. �ؿ��ѱ��ٷ������� Setup ���� UninstallIconFile, ��Ϊ�Ѿ��ҵ���Ӱ�� Win9x �� ���еĽ������������ɲ��� Example_UninstallIconFile.iss ���������һ��ģ�� UninsHs �����ӣ�����������������ǿ���ܵ�Ч��: Example_Uninstall_3.iss�� build 110206 (5.4.0.e4 & 5.4.0.ee4) MiniVCL �汾�� TLabel, TNewStaticText, TBitmapImage �����¼�: property OnMouseEnter: TNotifyEvent; read write; property OnMouseLeave: TNotifyEvent; read write; �������¼����ô����Բο�����: Example_MouseEvent_ImgBtn.iss �� Example_MouseEvent_URLLabel.iss TButton ���� procedure Click; FullVCL �汾: ����ͬ�� MiniVCL �汾�ĸ�����, �ܶ������ؼ����������¼�, ���� TEdit, TButton ������2���¼�. property OnMouseEnter: TNotifyEvent; read write; property OnMouseLeave: TNotifyEvent; read write; ����ɲο�����: Example_MouseEvent_HotEdit.iss ���⻹�������µĿؼ� TNewSpeedButton, ������: Example_TNewSpeedButton_1.iss �� Example_TNewSpeedButton_2.iss build 110214 (5.4.1.e1 & 5.4.1.ee1) ͬ���� 5.4.1 �汾�����������ؼ� TNewSpeedButton ��һЩ���⡣ build 110220 (5.4.1.e2 & 5.4.1.ee2) 1.�����ؼ� TNewSpeedButton ��һЩ���⡣ 2.���ں��� Format ���� Float �ľ����ԣ����������� FormatFloat ������������ӷ� ��ض� Float �������ݽ��и�ʽ��������ο� Example_FormatFloat.iss�� 3.TNewCheckListbox �������º���: procedure LoadBGBmpFromBitmap(Bmp: TBitmap; OffsetX, OffsetY: Integer); procedure LoadBGBmpFromFile(FileName: String; OffsetX, OffsetY: Integer); �������ӱ���ͼƬ�������Ϳ���ͳһ������װ�������ı�����������ͼһ�����ο� Example_NewCheckListBox.iss�� 4.MinVCL �汾Ϊ TStrings �������º���: procedure BeginUpdate; procedure EndUpdate; build 110326 (5.4.2.e1 & 5.4.2.ee1) ͬ���� 5.4.2 �汾�� build 110329 (5.4.2.e2 & 5.4.2.ee2) ����һ����������, ����һ�� Inno Setup �¼�: function InitializeLanguageDialog(Languages: String; var LanguageIndex: Integer): Boolean; ����һ���� ���ԶԻ��� ������ֵ� Inno Setup �¼��� Languages �����ԶԻ������ֵ������б�, LanguageIndex �ǽ���ѡ��������, ���¼� �п�������ָ��. ����ֵ���Ϊ��, ���ԶԻ��򽫲������. build 111225 (5.4.3.e1 & 5.4.3.ee1) ͬ���� 5.4.3 �汾�� build 120726 (5.5.1.e1 & 5.5.1.ee1) ͬ���� 5.5.1 �汾, ����Ψһͬ�ٷ���������, ���� Win2000 ���µ�ϵͳ(���� Win98, WinNT �ȵ�)��Ȼ֧�֡� ����������֧��: 1.��� TTrackBar ������������, ��Ҫ���Ե�������Ĵ�С. property ThumbLength: Integer; read write; 2.�޸�һ�� Inno Setup �¼�(����ʹ������� Example_InitializeLanguageDialog.iss): function InitializeLanguageDialog(Wnd: HWND; Languages: String; var LanguageIndex: Integer): Boolean; �޸���Ҫ������������ԶԻ���Ĵ��ھ��, �������Ϳ�������������Ŀؼ����ʵ��ĵ���. 3.�� WizardForm.FormStyle := fsStayOnTop ʱ, ������صĶԻ�������Ϊ���ᱻ WizardForm ���ڵ�. (������� Example_StayOnTop.iss) build 121002 (5.5.1.e2 & 5.5.1.ee2) ANSI �汾�� (MiniVCL: Setup.e32 �ļ���С: 731 KB) (FullVCL: Setup.e32 �ļ���С: 901 KB) Unicode �汾�� (MiniVCL: Setup.e32 �ļ���С: 1172 KB) (FullVCL: Setup.e32 �ļ���С: 1459 KB) �ٴε���һ�� Inno Setup �¼�(����ʹ������� Example_InitializeLanguageDialog.iss): ȥ��ȫ�����ݵIJ���, ֻ����һ������ֵ, ������� ��: ��ʾ�Ի���; ������� ��: ��ʾ�Ի��� ����, �ڴ˺������п���ʹ�����¿ؼ�, ���Ժͺ���. TSelectLanguageForm = class(TSetupForm) property SelectLabel: TNewStaticText; read; property LangCombo: TNewComboBox; read; property OKButton: TNewButton; read; property CancelButton: TNewButton; read; property IconBitmapImage: TBitmapImage; read; end; function SelectLanguageForm: TSelectLanguageForm; restools (http://restools.hanzify.org) ������������̳ (http://bbs.hanzify.org)