Inno 设置 TInputDirWizardPage 不允许 UNC 路径

发布于 2024-11-14 06:25:34 字数 607 浏览 8 评论 0原文

我有一个 TInputDirWizardPage 允许用户选择备份目录。它会自动允许并对输入的路径(包括 UNC 路径)进行错误检查。备份目录不能是 UNC 路径。如何使其不允许并错误检查 UNC 路径?

procedure InitializeWizard();
begin
  BackupInfoPage := CreateInputDirPage(100, 'caption', 'desc', 'sub caption', False,'Backup');
  BackupInfoPage.Add('Backup Location:');
  with BackupInfoPage do
  begin
      OnNextButtonClick := @BackupInfoForm_NextButtonClick;
  end;
end;

function BackupInfoForm_NextButtonClick(Page: TWizardPage): Boolean;
begin
  if not DirExists(BackupInfoPage.Values[0]) then
  begin
    ForceDirectories(BackupInfoPage.Values[0]);
  end;
end;

I have a TInputDirWizardPage to allow the user to pick a backup directory. It automatically allows and error checks the entered paths including UNC paths. The backup directory cannot be a UNC path. How can I make it not allow and error check UNC paths?

procedure InitializeWizard();
begin
  BackupInfoPage := CreateInputDirPage(100, 'caption', 'desc', 'sub caption', False,'Backup');
  BackupInfoPage.Add('Backup Location:');
  with BackupInfoPage do
  begin
      OnNextButtonClick := @BackupInfoForm_NextButtonClick;
  end;
end;

function BackupInfoForm_NextButtonClick(Page: TWizardPage): Boolean;
begin
  if not DirExists(BackupInfoPage.Values[0]) then
  begin
    ForceDirectories(BackupInfoPage.Values[0]);
  end;
end;

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

锦上情书 2024-11-21 06:25:34

我这样做了,但似乎没有做任何事情。

[Setup]
AllowUNCPath=false

因此,我添加了对 NextButtonClick 的检查,以将它们保留在输入路径页面上,直到它们输入有效的非 unc 路径。

if (Copy(BackupLocale, 1, 2) = '\\') then
  begin
    MsgBox('UNC paths are not allowed.', mbError, MB_OK);
    Result := False;
  end;

I did this, but it didn't seem to do anything.

[Setup]
AllowUNCPath=false

So I added a check on the NextButtonClick to keep them on the enter path page until they enter a valid, non-unc path.

if (Copy(BackupLocale, 1, 2) = '\\') then
  begin
    MsgBox('UNC paths are not allowed.', mbError, MB_OK);
    Result := False;
  end;
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文