2015-08-28 35 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