По какой-то причине я получаю сообщение об ошибке ниже при настройке Setup Icon
для установщика.
ОШИБКА:
Процесс не может получить доступ к файлу, потому что ониспользуется другим процессом
Сценарий:
#define MyAppName "MyApp 4.0"
#define MyAppVersion "4.0"
#define MyAppPublisher "Some Company Name"
#define MyAppURL "http://www.example.com/"
#define MyAppExeName "MyApp.exe"
[Setup]
AppId={{F89D3454-5DFD-471B-B4A1-D49DFB8637B0}
AppName={#MyAppName}
AppVersion={#MyAppVersion}
;AppVerName={#MyAppName} {#MyAppVersion}
AppPublisher={#MyAppPublisher}
AppPublisherURL={#MyAppURL}
AppSupportURL={#MyAppURL}
AppUpdatesURL={#MyAppURL}
DefaultDirName={pf}\MyApp App
DisableDirPage=yes
DisableProgramGroupPage=yes
LicenseFile=C:\Users\Some Folder\MyApp-License.txt
OutputDir=C:\Users\Some Folder\Installers
OutputBaseFilename=Setup-MyApp
SetupIconFile=C:\Users\Some Folder\Logos\logo.ico
Compression=lzma
SolidCompression=yes
[Languages]
Name: "english"; MessagesFile: "compiler:Default.isl"
[Tasks]
Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked
[Files]
Source: "C:\Users\UserName\SomeFolder\MyApp\bin\Release\MyApp.exe"; DestDir: "{app}"; Flags: ignoreversion
Source: "C:\Users\UserName\SomeFolder\MyApp\bin\Release\GalaSoft.MvvmLight.dll"; DestDir: "{app}"; Flags: ignoreversion
Source: "C:\Users\UserName\SomeFolder\MyApp\bin\Release\GalaSoft.MvvmLight.Extras.dll"; DestDir: "{app}"; Flags: ignoreversion
Source: "C:\Users\UserName\SomeFolder\MyApp\bin\Release\GalaSoft.MvvmLight.Extras.xml"; DestDir: "{app}"; Flags: ignoreversion
Source: "C:\Users\UserName\SomeFolder\MyApp\bin\Release\GalaSoft.MvvmLight.Platform.dll"; DestDir: "{app}"; Flags: ignoreversion
Source: "C:\Users\UserName\SomeFolder\MyApp\bin\Release\GalaSoft.MvvmLight.Platform.xml"; DestDir: "{app}"; Flags: ignoreversion
Source: "C:\Users\UserName\SomeFolder\MyApp\bin\Release\GalaSoft.MvvmLight.xml"; DestDir: "{app}"; Flags: ignoreversion
Source: "C:\Users\UserName\SomeFolder\MyApp\bin\Release\Microsoft.Practices.ServiceLocation.dll"; DestDir: "{app}"; Flags: ignoreversion
Source: "C:\Users\UserName\SomeFolder\MyApp\bin\Release\Microsoft.Practices.ServiceLocation.xml"; DestDir: "{app}"; Flags: ignoreversion
Source: "C:\Users\UserName\SomeFolder\MyApp\bin\Release\Newtonsoft.Json.dll"; DestDir: "{app}"; Flags: ignoreversion
Source: "C:\Users\UserName\SomeFolder\MyApp\bin\Release\Newtonsoft.Json.xml"; DestDir: "{app}"; Flags: ignoreversion
Source: "C:\Users\UserName\SomeFolder\MyApp\bin\Release\System.Windows.Interactivity.dll"; DestDir: "{app}"; Flags: ignoreversion
Source: "C:\Users\UserName\SomeFolder\MyApp\bin\Release\Xceed.Wpf.AvalonDock.dll"; DestDir: "{app}"; Flags: ignoreversion
Source: "C:\Users\UserName\SomeFolder\MyApp\bin\Release\Xceed.Wpf.AvalonDock.Themes.Aero.dll"; DestDir: "{app}"; Flags: ignoreversion
Source: "C:\Users\UserName\SomeFolder\MyApp\bin\Release\Xceed.Wpf.AvalonDock.Themes.Metro.dll"; DestDir: "{app}"; Flags: ignoreversion
Source: "C:\Users\UserName\SomeFolder\MyApp\bin\Release\Xceed.Wpf.AvalonDock.Themes.VS2010.dll"; DestDir: "{app}"; Flags: ignoreversion
Source: "C:\Users\UserName\SomeFolder\MyApp\bin\Release\Xceed.Wpf.DataGrid.dll"; DestDir: "{app}"; Flags: ignoreversion
Source: "C:\Users\UserName\SomeFolder\MyApp\bin\Release\Xceed.Wpf.MyAppkit.dll"; DestDir: "{app}"; Flags: ignoreversion
; NOTE: Don't use "Flags: ignoreversion" on any shared system files
[Icons]
Name: "{commonprograms}\{#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
Если я закомментирую строку SetupIconFile=C:\Users\Some Folder\Logos\logo-name.ico
, она прекрасно компилируется без ошибок.
Есть идеи, что можно сделать, чтобы решить эту проблему?
Спасибо