Inno setup “创新设置”;您选择的驱动器或UNC共享不存在或不可访问;,为什么?

Inno setup “创新设置”;您选择的驱动器或UNC共享不存在或不可访问;,为什么?,inno-setup,Inno Setup,我已经在Inno安装程序中编写了一个应用程序,用于在用户PC上安装文件。当我在XP上以并行方式在Mac上运行时,该应用程序运行良好。但是,当用户在Xp和7中尝试安装时,他们会进入向导并启动安装,然后收到以下消息: 错误。您选择的驱动器或UNC共享不存在或不可访问 我现在已成功获取程序生成的日志文件: 2012-11-11 14:09:21.992 Log opened. (Time zone: UTC+00:00) 2012-11-11 14:09:21.992 Setup versi

我已经在Inno安装程序中编写了一个应用程序,用于在用户PC上安装文件。当我在XP上以并行方式在Mac上运行时,该应用程序运行良好。但是,当用户在Xp和7中尝试安装时,他们会进入向导并启动安装,然后收到以下消息:

错误。您选择的驱动器或UNC共享不存在或不可访问

我现在已成功获取程序生成的日志文件:

2012-11-11 14:09:21.992   Log opened. (Time zone: UTC+00:00)

2012-11-11 14:09:21.992   Setup version: Inno Setup version 5.5.2 (a)

2012-11-11 14:09:21.992   Original Setup EXE: C:\Users\Ali\Documents\rninstaller.exe

2012-11-11 14:09:21.992   Setup command line: /SL5="$9049C,86159698,54272,C:\Users\Ali\Documents\rninstaller.exe" /SPAWNWND=$D049A /NOTIFYWND=$140476 /log="rnlog"

2012-11-11 14:09:21.992   Windows version: 6.1.7601 SP1  (NT platform: Yes)

2012-11-11 14:09:21.992   64-bit Windows: Yes

2012-11-11 14:09:21.992   Processor architecture: x64

2012-11-11 14:09:21.992   User privileges: Administrative

2012-11-11 14:09:21.992   64-bit install mode: No

2012-11-11 14:09:21.992   Created temporary directory: C:\Users\Ali\AppData\Local\Temp\is-MQ2FF.tmp

2012-11-11 14:09:28.201   RestartManager found an application using one of our files: ?O?O?O?I?O?O?O?I?O?O?O?O?O?O?O?O?O?O?O?O?O?O?O?O?O?O?O?ODO?O?O?O?O?I?I?I?I?I?I?I?I?I?I?I?I?I?I?I?I?I?I?I?I?I?I?I?I?I?O?O?O?O?O?O?O?O?O?I?I?i

2012-11-11 14:09:28.201   RestartManager found an application using one of our files: 

2012-11-11 14:09:28.201   RestartManager found an application using one of our files: 

2012-11-11 14:09:28.201   RestartManager found an application using one of our files: 

2012-11-11 14:09:28.201   RestartManager found an application using one of our files: 

2012-11-11 14:09:28.201   Can use RestartManager to avoid reboot? No (262758)

2012-11-11 14:09:28.201   Message box (OK):
                          The drive or UNC share you selected does not exist or is not accessible. Please select another.

2012-11-11 14:09:31.592   User chose OK.

2012-11-11 14:09:31.592   Deinitializing Setup.

2012-11-11 14:09:31.592   Log closed.

我看不出这里发生了什么。有人能帮忙吗?

正如问题的注释中所述,问题中的安装脚本有一个硬编码的
DefaultDirName
,它由客户端站点上不存在的服务器名称组成。这导致“您选择的驱动器或UNC共享不存在或不可访问”错误。这就是为什么,大多数情况下,“以目录常量作为前缀”。

我得到这个错误的原因不同。我的脚本没有任何硬编码路径,UNC或其他。这是在Windows 10计算机上。我已经在闪存驱动器上安装了该应用程序,但后来尝试在PC上安装另一个版本时,闪存驱动器不存在。安装失败,因为Windows无法卸载以前的版本,而Inno安装程序正在尝试更新已安装的版本。要进行检查,请打开控制面板并选择程序和功能。如果已安装应用程序的某个版本,请尝试卸载它。如果失败,则安装程序将给出OP记录的相同错误


我希望这对遇到这个问题的其他人有所帮助。

对于在本文中寻找“驱动程序或UNC共享不存在”问题解决方案的其他人,我发现这个问题可以追溯到上次安装的遗留问题,特别是卸载可执行文件

如果您不再具有卸载可执行文件,并且Windows 10“添加或删除程序”无法卸载(可能是由于缺少
uninst.exe
),您可以尝试进行一些注册表黑客攻击以使其安装

继续
Computer\HKEY\u LOCAL\u MACHINE\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall\
并扫描引用软件卸载可执行文件的条目。将整个密钥清除掉。然后-再次尝试安装程序

卸载密钥还有另一个位置:

  • Computer\HKEY\u CURRENT\u USER\Software\Microsoft\Windows\CurrentVersion\Uninstall\
  • Computer\HKEY\u LOCAL\u MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall
  • Computer\HKEY\U USERS\.DEFAULT\Software\Microsoft\Windows\CurrentVersion\Uninstall
  • Computer\HKEY\u USERS\S…\Software\Microsoft\Windows\CurrentVersion\Uninstall

您可能还想在这些地方查找条目。

您必须做一些研究,向您提出一些问题,并将相关信息包含在您的问题中。例如:它发生在特定的文件上?任何文件?用户选择的目标是UNC路径吗?她可以写入该路径吗?您的目标是什么或者脚本中的文件?您在安装阶段是否执行任何自定义代码?目标计算机中是否有特殊情况?它发生在任何计算机或特定的计算机/集合上?等等…我必须承认我感到困惑。我使用Inno安装向导创建应用程序。没有代码部分。文件部分将文件移动到用户电脑上我的文档中的一个新文件夹。在此过程中,用户不会被要求做出任何决定。我所知道的目标机器没有什么特别之处。目前为止,它发生在两台电脑上——一台运行XP,一台运行7。让我困惑的是,应用程序中的错误消息引用了驱动器或UNC共享文件被定向到用户的“我的文档”文件夹!有什么想法吗?在Windows中,可以将“文档”文件夹配置为UNC路径,您是否要求在安装程序中具有管理员权限?嗨,JachGrate。感谢您在这方面的帮助。我不认为我要求在安装程序中具有管理员权限。我真正想做的是什么我在[Setup]中有Setuplogging=yes,在[Code]中我将日志文件复制到{app}中的一个新文件中文件夹,如果CurStep=ssDone。但当然,这只会在成功完成后进行复制。我找不到由Setuplogging生成的文件。你知道我如何获取该文件吗?你可以使用/LOG=“filename”参数运行安装程序,以控制文件的创建位置。请查看,但这是另一个问题!