Yalnızca bir dizi yerleşik yükleyiciyi çalıştıran Inno Kurulum yükleyicisi

Jan 08 2021

Inno Setup'ta yalnızca bir dizi gömülü yükleyiciyi çalıştıracak bir yükleyici oluşturuyorum. Kendi başına herhangi bir dosya yüklemez.

Yükleyiciyi derlerken şu hatayı alıyorum:

Sürücü harfiyle tam bir yol girmelisiniz; örneğin: C: \ APP veya \ server \ share gibi bir UNC yolu

Kodum aşağıdadır ancak test bilgisi için şirket bilgisini değiştirdim. Tam UNC yolumuz var, bu yüzden bu hatayı neden aldığımı bilmiyorum? Bu işlem sırasında, konum için kimlik bilgileri nasıl giriliyor?

[Setup]
AppName=DRsetup
AppVerName=DRsetup
DefaultDirName=C:\
OutputDir=.
OutputBaseFilename=DRsetup
DisableDirPage=yes
DisableFinishedPage=yes
Uninstallable=no

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

[TASKS]
Name: MapDrives; "Description: Map the network drives"; \
    GroupDescription: "Application Selection:"; 
Flags: unchecked exclusive;
Name: Test; Description: "Test"; GroupDescription: "Application                         
selection:"; Flags: unchecked exclusive;
Name: Test2; Description: "Test2"; GroupDescription: "Application selection:"; \
    Flags: unchecked exclusive;
Name: Test3; Description: "Test3"; GroupDescription: "Application         
selection:"; Flags: unchecked exclusive;
Name: Test4; Description: "Test4"; GroupDescription: "Application selection:"; 
Flags: unchecked exclusive;
Name: Test5; Description: "Test5"; GroupDescription: "Application selection:"; \
    Flags: unchecked exclusive;
Name: Test6; Description: "Test6"; GroupDescription: "Application selection:"; 
Flags: unchecked exclusive;
Name: Test7; Description: "Test7"; GroupDescription: "Application selection:"; \
    Flags: unchecked exclusive

[Files]
Filename: {sys}\net.exe; \
     Parameters: "use I: \\Test\PUB /user:administrator /PERSISTENT:YES"; \
     Tasks: MapDrives;
Filename: {sys}\net.exe; \
    Parameters: "use H: \\Test\SYS /user:administrator /PERSISTENT:YES"; \
    Tasks: MapDrives;
Source: "\\Test\PUB\Install\Test.exe"; DestDir: "{app}"; Flags: 
ignoreversion; Languages: english; Tasks: Test
Source: "\\Test\PUB\Install\Test2.exe"; DestDir: "{app}"; Flags: ignoreversion; 
Languages: english; Tasks: Test2;
Source: "\\Test\PUB\Install\Test3.msi"; DestDir: "{app}"; Flags:         
ignoreversion; Languages: english; Tasks: Test3;
Source: "\\Test\PUB\Install\Test4.msi"; DestDir: "{app}"; Flags: 
ignoreversion; Languages: english; Tasks: Test4;
Source: "\\Test\PUB\Install\Test5.msi"; DestDir: "        
{app}"; Flags: ignoreversion; Languages: english; Tasks: Test5;
Source: "\\Test\PUB\Install\Test6.exe"; DestDir: "{app}"; Flags: 
ignoreversion; Languages: english; Tasks: Test6;
Source: "\\Test\PUB\Install\Test7.exe"; DestDir: "{app}"; Flags: ignoreversion;         
Languages: english; Tasks: Test7;

[RUN]
Filename: {sys}\net.exe; \
     Parameters: "use I: \\Test\PUB /user:administrator /PERSISTENT:YES"; \    
     Tasks: MapDrive;
Filename: {sys}\net.exe; \
    Parameters: "use H: \\Test\SYS /user:administrator /PERSISTENT:YES"; \
    Tasks: MapDrive;
Filename: "{userdesktop}\Test.exe"; Flags: runascurrentuser; Tasks: Test;
Filename: "{userdesktop}\Test2.exe"; Flags: runascurrentuser; Tasks: Test2;
Filename: "{userdesktop}\Test3.msi"; Flags:  
runascurrentuser; Tasks: Test3;
Filename: "{userdesktop}\Test4.msi"; Flags: runascurrentuser; Tasks: Test4;
Filename: "{userdesktop}\Test5.msi"; Flags: runascurrentuser; Tasks: Test5;
Filename: "{userdesktop}\Test6.exe"; Flags: runascurrentuser; Tasks: Test6;
Filename: "{userdesktop}\Test7.exe"; Flags: runascurrentuser; Tasks: Test7;

Yanıtlar

3 MartinPrikryl Jan 08 2021 at 23:03

Hatanın herhangi bir ağ konumu ile ilgisi yoktur. İçinde atıfta C:\bulunuyor DefaultDirName.

Bu hata mesajı hakkında genel bir tartışma için, bkz:
USB sürücü köküne yükleme sırasında Inno Kurulum hatası: "Sürücü harfiyle tam bir yol girmelisiniz"

USB sürücü köküne yükleme yapmasanız da. C:Kök sürücüsüne yüklemeye çalışıyorsunuz . Bu açıkça yanlış. Asla C:köke bir şey yüklemeye çalışmamalısınız .

Yükleyicinizin aslında kendi başına herhangi bir gerçek dosya yüklemediğini anlıyorum. Ardından, hem belirlesin CreateAppDirve Uninstallablehiç no:

[Setup]
CreateAppDir=no
Uninstallable=no

Ve sizin alt montajcılar ayıklamak gerekir {tmp}, değil {app}.

Ayrıca bkz. Inno Setup UI'yi yalnızca kendi kendine çıkarıcı olarak kullanma - Kurulum yok .