セットアップコンテンツを1つの特定のディレクトリにのみインストールしたいので、ユーザーがインストールする正しいフォルダを選択しない限り、ディレクトリ選択ページのNext
ボタンを無効にします。特定のフォルダにのみインストールを許可する方法はありますか?
ディレクトリ選択ページのNext
ボタンを無効にして、ユーザーが特定のディレクトリを選択した直後に有効にするにはどうすればよいですか?
セットアップコンテンツを1つの特定のディレクトリにのみインストールしたいので、ユーザーがインストールする正しいフォルダを選択しない限り、ディレクトリ選択ページのNext
ボタンを無効にします。特定のフォルダにのみインストールを許可する方法はありますか?
ディレクトリ選択ページのNext
ボタンを無効にして、ユーザーが特定のディレクトリを選択した直後に有効にするにはどうすればよいですか?
次のサンプルではC:\MySecretDir
フォルダ(MySecretDir
定数)あなたはSelectDir
ページに到達したときNext
ボタンを無効にし、ユーザーが入力(またはブラウズ・ディレクトリ]ダイアログボックスから選択した)場合にのみ、それを有効にする方法を示しています。比較は大文字と小文字を区別しません。ユーザーは自分が望むものを入力することができます。
[Setup]
AppName=My Program
AppVersion=1.5
DefaultDirName={pf}\My Program
[Code]
const
MySecretDir = 'C:\MySecretDir';
procedure OnDirEditChange(Sender: TObject);
begin
WizardForm.NextButton.Enabled := CompareText(WizardDirValue, MySecretDir) = 0;
end;
procedure CurPageChanged(CurPageID: Integer);
begin
if CurPageID = wpSelectDir then
OnDirEditChange(nil);
end;
procedure InitializeWizard;
begin
WizardForm.DirEdit.OnChange := @OnDirEditChange;
end;
それとも、選択したディレクトリ内の特定のファイルMyUniqueFile.exe
があります場合にのみ、Next
ボタンを有効OnDirEditChange
イベントハンドラで、このようにコードを変更したい場合:
procedure OnDirEditChange(Sender: TObject);
begin
WizardForm.NextButton.Enabled := FileExists(AddBackslash(WizardDirValue) +
'MyUniqueFile.exe');
end;
私は何を言うことができますか?完璧な、ちょうど私が探していたもの!どうもありがとうございました! – user1320880
NextButtonClickでチェックを行い、失敗した場合に備えてメッセージボックスをスローし、関数がfalseを返すようにするほうが、使いやすいようです。この方法で、彼は彼が続けることができないようにユーザーに通知することができます。また、ボタンを無効にしても、サイレントインストールには影響しませんが、NextButtonClickを作成するとfalseが返されます。 – Nyerguds
@ニャルグッズはい、そうかもしれません。私はちょうど質問された質問に答えました。サイレントセットアップについては、この質問がユーザーの選択を尋ねるので、何の効果もありません。 – TLama
あなたはからユーザーを停止することができディレクトリ選択ページを無効にして、インストールディレクトリを変更します。無効にすると、インストール中にページが表示されません。
[SETUP]
DisableDirPage=yes
それは正しいですが、OPの要件は*ユーザーがインストールする正しいフォルダを選択しない限り、[ディレクトリ選択]ページの[次へ]ボタンを無効にします。 – TLama
ようこそStackOverflow! *ユーザーが正しいフォルダを選択するまで、次のボタンはグレー表示されます*かなり誤解を招くことはありませんか?ユーザーが正しいディレクトリを忘れるとどうなりますか? *フォルダを選択*編集ボックスを無効にするか、そのページを一切スキップしない方が良いでしょうか? – TLama
インストールディレクトリはすべてのコンピュータで同じではなく、インストールパスを読むためのレジストリキーがプログラムにはないので、それは良くありません。私はreadmeファイルを持っているので、ユーザは正しいディレクトリを忘れることはありません。インストーラには、ユーザを支援するカスタムテキストもあります。 – user1320880