2015-08-28 220 views
3

我是Inno Setup的新手,我希望將桌面圖標添加到Inno Setup中的可執行文件中。該文件存儲在如何使用Inno Setup創建桌面圖標

C:\Users\PycharmProjects\GIOTTOconverter\dist\giotto.ico 

我試圖按照幾個例子,但沒有結果。

; Script generated by the Inno Setup Script Wizard. 
; SEE THE DOCUMENTATION FOR DETAILS ON CREATING INNO SETUP SCRIPT FILES! 

#define MyAppName "GIOTTO" 
#define MyAppVersion "1.0" 
#define MyAppExeName "GIOTTO.exe" 

[Setup] 
; NOTE: The value of AppId uniquely identifies this application. 
; Do not use the same AppId value in installers for other applications. 
; (To generate a new GUID, click Tools | Generate GUID inside the IDE.) 
AppId={{48A8A469-1711-46FD-AC87-1596EF57C123} 
AppName={#MyAppName} 
AppVersion={#MyAppVersion} 
;AppVerName={#MyAppName} {#MyAppVersion} 
DefaultDirName={pf}\{#MyAppName} 
DefaultGroupName={#MyAppName} 
AllowNoIcons=yes 
OutputBaseFilename=GiottoSetup 
SetupIconFile=C:\Users\PycharmProjects\GIOTTOconverter\dist\giotto.ico 
Compression=lzma 
SolidCompression=yes 

[Languages] 
Name: "english"; MessagesFile: "compiler:Default.isl" 
Name: "french"; MessagesFile: "compiler:Languages\French.isl" 
Name: "italian"; MessagesFile: "compiler:Languages\Italian.isl" 
Name: "spanish"; MessagesFile: "compiler:Languages\Spanish.isl" 

[Tasks] 
Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked 
Name: "quicklaunchicon"; Description: "{cm:CreateQuickLaunchIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked; OnlyBelowVersion: 0,6.1 

[Files] 
Source: "C:\Users\PycharmProjects\GIOTTOconverter\dist\GIOTTO.exe"; DestDir: "{app}"; Flags: ignoreversion 
Source: "C:\Users\PycharmProjects\GIOTTOconverter\dist\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs 
; NOTE: Don't use "Flags: ignoreversion" on any shared system files 

[Icons] 
Name: "{group}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}" 
Name: "{group}\{cm:UninstallProgram,{#MyAppName}}"; Filename: "{uninstallexe}" 
Name: "{commondesktop}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"; Tasks: desktopicon 
Name: "{userappdata}\Microsoft\Internet Explorer\Quick Launch\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"; Tasks: quicklaunchicon 

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

回答

8

[Files] section,您安裝giotto.ico到應用程序文件夾(你可能要安裝的圖標只有當選擇desktopicon任務)。

[Icons] section中,使用安裝的giotto.ico(選擇desktopicon任務時)創建桌面圖標。

#define SourcePath "C:\Users\PycharmProjects\GIOTTOconverter\dist" 
#define MyAppName "GIOTTO" 
#define MyAppExeName "GIOTTO.exe" 
#define MyAppIcoName "giotto.ico" 

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

[Files] 
Source: "{#SourcePath}\{#MyAppExeName}"; DestDir: "{app}"; Flags: ignoreversion 
Source: "{#SourcePath}\{#MyAppIcoName}"; DestDir: "{app}" 

[Icons] 
Name: "{userdesktop}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"; \ 
    IconFilename: "{app}\{#MyAppIcoName}"; Tasks: desktopicon 

但如果可執行文件(GIOTTO.exe)已鏈接到相同的圖標,你並不需要單獨安裝的圖標。只需使用EXE文件中的圖標:

#define SourcePath "C:\Users\PycharmProjects\GIOTTOconverter\dist" 
#define MyAppName "GIOTTO" 
#define MyAppExeName "GIOTTO.exe" 

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

[Files] 
Source: "{#SourcePath}\{#MyAppExeName}"; DestDir: "{app}"; Flags: ignoreversion 

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