組み込みインストーラーのセットのみを実行するInnoSetupインストーラー
組み込みインストーラーのセットのみを実行するインストーラーをInnoSetupで作成しています。単独でファイルをインストールすることはありません。
インストーラーをコンパイルすると、次のエラーが発生します。
ドライブ文字を使用してフルパスを入力する必要があります。例:C:\ APPまたは\ server \ shareなどのUNCパス
以下は私のコードですが、会社情報をテスト情報に交換しました。完全なUNCパスがあるので、なぜこのエラーが発生するのかわかりません。このプロセス中に、場所の資格情報はどのように入力されますか?
[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;
回答
3 MartinPrikryl
このエラーは、ネットワークの場所とは何の関係もありません。で参照しC:\
ていDefaultDirName
ます。
このエラーメッセージの一般的な説明については、次を参照してください
。USBドライブルートにインストールする際のInno Setupエラー:「ドライブ文字を含むフルパスを入力する必要があります」
USBドライブルートにはインストールしませんが。C:
ルートを駆動するためにインストールしようとしています。それは間違っています。C:
ルートに何かをインストールしようとしないでください。
インストーラーが実際に実際のファイルをインストールしないことを理解しています。次に、との両方CreateAppDirを次のUninstallableように設定する必要がありますno
。
[Setup]
CreateAppDir=no
Uninstallable=no
また、サブインストーラーをに{tmp}ではなく、に抽出する必要があります{app}
。
Inno SetupUIを自己解凍形式としてのみ使用する-インストールなしも参照してください。