首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Inno Setup Uninstall entry在使用另一个(管理员)帐户卸载非管理员安装时不会被删除

基础概念

Inno Setup 是一款用于创建 Windows 安装程序的工具,它支持创建标准的 Windows 安装包(.exe 文件)。Inno Setup 安装程序会在注册表的 HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\UninstallHKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Uninstall 下创建卸载条目,以便用户可以通过“控制面板”中的“程序和功能”来卸载程序。

问题描述

当使用非管理员账户安装了某个程序,并且尝试使用管理员账户卸载该程序时,Inno Setup 创建的卸载条目可能不会被删除。

原因

这个问题通常是由于权限问题导致的。非管理员账户安装的程序通常会在 HKEY_CURRENT_USER 下创建卸载条目,而管理员账户在卸载时可能无法访问或修改 HKEY_CURRENT_USER 下的数据。

解决方法

  1. 使用相同的账户卸载: 最简单的解决方法是用同一个账户(非管理员账户)来卸载程序。这样可以确保卸载程序能够访问并删除相应的卸载条目。
  2. 手动删除卸载条目: 如果必须使用管理员账户卸载,可以手动删除注册表中的卸载条目。请按照以下步骤操作:
    • 打开注册表编辑器(regedit)。
    • 导航到 HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\UninstallHKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Uninstall
    • 找到并删除相应的卸载条目。
  • 修改 Inno Setup 脚本: 如果你有权限修改 Inno Setup 脚本,可以在脚本中添加代码,确保卸载条目在卸载过程中被正确删除。例如:
  • 修改 Inno Setup 脚本: 如果你有权限修改 Inno Setup 脚本,可以在脚本中添加代码,确保卸载条目在卸载过程中被正确删除。例如:

应用场景

这个问题常见于企业环境中,其中不同的用户具有不同的权限级别。例如,普通员工可能使用非管理员账户安装软件,而 IT 管理员可能需要在管理员账户下卸载这些软件。

参考链接

通过以上方法,你应该能够解决 Inno Setup 卸载条目未被删除的问题。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

.NET6打包部署到Windows Service

打开Inno Setup安装目录,默认C:\Program Files (x86)\Inno Setup 6。...SourceIsCorrupted=源文件使用 SourceDoesntExist=源文件 "%1" 不存在 ExistingFileReadOnly=该已经存在的文件是只读属性。...OnlyAdminCanUninstall=该安装程序只能在您具有管理员权限时才能执行卸载工作。 UninstallStatusLabel= %1 正在被删除,请稍等。...UninstalledAll=%1 成功地从您的电脑中删除。 UninstalledMost=%1 删除完成。%n%n有某些部件不能被删除。您可能需要手动删除它们。...ConfirmDeleteSharedFile2=系统指出以下的共享程序文件将不再被使用。您是否想删除这些共享文件?%n%n如果这些文件删除后,其他程序仍然要使用它,可能其它程序的功能将受影响。

1K10
  • Sordum 实用辅助小工具

    系统管理员已阻止这个应用(包括卸载也会有该提示) Hide From Uninstall List(hideUL) 第二个 hideUL 是一款指定隐藏软件卸载工具, You may want to...hide one or more entries added by software setup(s) in Add/Remove Programs (also known as “Programs...for this 然后是使用的原因(不想让人知道该程序安装到电脑、不想让人卸载该程序、程序卸载但图标仍残留) You do not want anybody to know the program...You do not want somebody uninstall it. The app is already removed but the entry left in the list....状态更新 隐藏后控制面板卸载程序消失 下载链接 官网上面提及了,这里再提供服务器下载链接(也可以 /download 页面下载) AskAdmin HideUL 小结 这几个工具配合简直如虎添翼,那怕是稍微懂点电脑的

    28310

    node版本管理神器nvm安装使用教程(Windows11版本)

    当我们同时在做几个需求不同的项目,可能我们需要使用不一样的node.js版本,那么我们就需要在不同的node.js版本中进行切换,我们要在电脑上重复卸载安装多个不同版本的node,非常麻烦,这个时候...nvm,即node version manager(node 版本管理工具),允许你同一台计算机上同时安装和管理多个Node.js版本,而不会互相干扰。本文中,我们将详细介绍nvm的安装使用。...安装前提 安装nvm之前,我们需要先将已有的node.js全部卸载安装nvm之前,我们需要先将已有的node.js全部卸载安装nvm之前,我们需要先将已有的node.js全部卸载!...latest // 安装最新版本node 注:当运行nvm install命令,若出现权限问题,可以使用管理员身份运行cmd nvm use nvm use 版本号 使用指定版本的node nvm...use 12.122.0 // 使用12.22.0版本node 注:当我们要使用npm,需要先指定node版本,即先运行nvm use命令,再使用npm命令 nvm uninstall nvm uninstall

    1.2K20

    提升的 Dotnet 命令访问权限

    但是,某些软件(如性能监视工具)由于操作系统规则,需要管理员权限。 以下指南介绍使用 .NET Core 编写此类软件的适用方案。...主要问题是用户发出 dotnet 命令后帐户和受限帐户之间来回切换存在权限管理问题。 受限用户可能会发现自己无法访问根用户构建的文件。 有办法可以解决这种情况,但不一定要使用这些方法。...“组或用户名”下,检查“用户”组是否具有写入或修改目录的权限。 如果“用户”组可以写入或修改目录,则在安装工具使用其他目录名,而不使用 dotnet-tools 。...卸载全局工具 sudo dotnet tool uninstall PACKAGEID --tool-path /usr/local/share/dotnet-tools 如果创建了符号链接,还需将其删除...卸载全局工具 sudo dotnet tool uninstall PACKAGEID --tool-path /usr/local/share/dotnet-tools 如果创建了符号链接,还需将其删除

    1K10

    node版本管理神器nvm安装使用教程(Windows11版本)

    当我们同时在做几个需求不同的项目,可能我们需要使用不一样的node.js版本,那么我们就需要在不同的node.js版本中进行切换,我们要在电脑上重复卸载安装多个不同版本的node,非常麻烦,这个时候...nvm,即node version manager(node 版本管理工具),允许你同一台计算机上同时安装和管理多个Node.js版本,而不会互相干扰。本文中,我们将详细介绍nvm的安装使用。...安装前提在安装nvm之前,我们需要先将已有的node.js全部卸载安装nvm之前,我们需要先将已有的node.js全部卸载安装nvm之前,我们需要先将已有的node.js全部卸载!...nvm-setup.zip:安装版,推荐使用nvm-setup.exe:无需解压,直接安装,墙裂推荐!!!...版本node注:当我们要使用npm,需要先指定node版本,即先运行nvm use命令,再使用npm命令nvm uninstallnvm uninstall 版本号 卸载指定版本的nodenvm uninstall

    1.1K10

    基于DotNet构件技术的企业级敏捷软件开发平台 - AgileEAS.NET平台开发指南 - 系统管理使用教程

    (建议系统管理员在为员工创建登录名称使用该员工的姓名或者姓名的汉语拼音的首字母)。...默认情况下,用户名称是“Administrator”,这是系统预定义的一个系统管理员帐户,这个帐户具有最大的权限,它的主要作用是初始化系统以及进行系统管理工作,因此一般用户不会使用帐户,该账户要设置复杂的密码...启用智能登录          类似于 Windows XP的登录过程,启用智能登录后,曾经在当前计算机上登录过的帐户,都会自动记录下来,那么用户再次该计算机上登录,只需要从下拉列表中进行选择即可...模块包管理中可以完成模块子/插件包/子系统的新增、删除、修改,同时也可以完成模块的安装、配置、卸载。...如果一个帐户登录输入错误密码的次数超过指定的次数,则该帐户就会被自动锁定,只有通过系统管理员帐户管理列表中解除锁定。

    2.4K60

    怎么将 Python 项目打包成 exe?

    环境Python 3.8Tkinter (自带)pyinstaller 6.3.0Inno Setup Compiler基本流程用 conda 单独创建一虚拟环境,比如写一个 tkinter 应用,对了为了好看...然后用 pyinstaller 将应用打成文件包 (含 exe),最后用 Inno Setup Compiler 打成安装包,里面就是各种文件关联,图标和信息的设置了。...diff复制代码参数说明:-–icon=图标路径-F 打包成一个exe文件-w 使用窗口,无控制台-c 使用控制台,无窗口-D 创建一个目录,里面包含exe以及其他一些依赖性文件还有一个问题是,如果是修改了代码...,需要反复多次打包,可以把项目前一次打包生成的生成的 spec 后缀文件删除即可。...Inno Setup Compiler 操作新建脚本,填写信息选择主程序和需要的文件设置名称和 icon选择导出位置 (前面还有协议等设置)运行脚本开始生成安装打开,安装目录里有自带卸载程序

    9810

    【玩转腾讯云】Visual Studio 20132015完全卸载

    在前一篇讲解了关于 Visual Studio 2008 卸载,如果安装的是 Visual Studio2013或者 Visual Studio2015呢?...1.必须是管理员身份运行cmd窗口; 2.如果是自己手动输入,那么一定要是英文输入法下输入,还有vs_community.exe /uninstall /force这行代码中间有两个空格,一定要加上;...三.使用微软官方的卸载工具来清理残余数据 1.下载清理工具 卸载完成后必须要清理掉残留数据,以防止再次安装或更换别的版本无法安装,此时需要使用微软官方的卸载工具来清理,其最新版本下载地址为: https...://github.com/Microsoft/VisualStudioUninstaller/releases 2.以管理员身份执行setup.forceduninstall.exe; 3.按Y进行卸载...猜你喜欢: 1.安装Visual Studio 2.设置Visual Studio字体/背景/行号 3.Visual Studio 2008完全卸载 转载请注明:猿说Python/C++ » Visual

    2.6K30

    常用软件打包类型及静默安装参数(nsis|msi|InstallShield|Inno)

    /M2 调试器会话期间保留供WISE内部使用 示例: setup.exe /T 卸载WISE: /Z 删除空目录,包括其中包含不明智的目录。 /A 自动模式,除了取消,没有其他用户选择。.../S 无提示模式,无用户选择的自动模式 /R 回滚模式,选择卸载回滚的选 /U 类似自动模式,但给出除了自定义/自动标题窗口之外的所有选项,标题可以命令行。...六、Inno Setup 使用 Inno 技术制成的程序安装包可以使用 /SILENT 和 /VERYSILENT 参数进行静默安装。...Inno Setup 制作的安装文件,请使用下面的明显,安装完直接重启: setup.exe /sp- /silent /norestart 如何判断哪个安装程序是用 Inno 技术打包的?...这种软件安装出现的第一个界面,在窗口标题栏左侧的图标上点击鼠标左键,然后再探出菜单上点击“About Setup”可以看见安装类型。

    14.4K22

    MsSQL2008R2安装基础流程笔记

    1.2 域用户帐户是一个使用 Windows 身份验证的域用户帐户以设置并连接到 SQL Server (建议使用最低权限的域用户帐户),因为 SQL Server 服务不需要管理员帐户特权; 如果服务必须与网络服务进行交互...WeiyiGeek.管理员账户与数据根目录 Step 7.再次进行安装配置规则检查 -> 安装配置文件路径 C:\Program Files\Microsoft SQL Server\100\Setup...INSTANCEID="MSSQLSERVER" ; 指定安装程序的工作流,如 INSTALL、UNINSTALL 或 UPGRADE。这是必需的参数。...ACTION="Install" ; 指定要安装卸载或升级的功能。顶级功能列表包括 SQL、AS、RS、IS 和工具。SQL 功能将安装数据库引擎、复制和全文。...安装 SQL Server 数据库引擎(SQL)、Analysis Services (AS)或 Reporting Services (RS),此参数是必需的。

    1.9K20

    如何在Debian 9上安装Node.js.

    没有服务器的同学可以在这里购买,不过我个人更推荐您使用免费的腾讯云开发者实验室进行试验,学会安装后再购买服务器。 开始之前,您应该拥有一个系统上设置了具有sudo权限的root用户帐户。...在这一种情况下,nvm主目录中的独立目录级别工作,而不是操作系统级别工作。这意味着您可以安装多个自包含的Node.js版本,而不会影响整个系统。...您可以通过键入以下命令来告诉nvm去使用您刚下载的版本: nvm use 8.11.1 当使用nvm安装Node.js ,可执行文件命名为node。...要使用nvm来卸载已启用的Node.js版本,请首先确定要删除的版本是否为当前活动版本: nvm current 如果您要定位的版本不是当前的活动版本,则可以运行: nvm uninstall node_version...如果要删除的版本是当前活动版本,则必须先停用nvm以启用更改: nvm deactivate 您现在可以使用uninstall上面的命令卸载当前版本,这将删除与目标版本的Node.js关联的所有文件,但可用于重新安装的缓存文件除外

    6.1K50

    【工具系列】Windows包管理工具Scoop安装使用

    「用户文件夹」下:这样既不会污染路径也不会请求不必要的权限(UAC) 卸载软件的时候,能够尽量清空软件电脑上存储的任何数据和痕迹 Scoop 最适合安装那种干净、小巧、开源的软件。...显示安装包缓存 $ scoop cache show 删除指定应用的安装包缓存 $ scoop cache rm 删除所有的安装包缓存 $ scoop cache rm * 如果你不希望安装和更新软件保留安装包缓存...使用 scoop install 命令加上 -g 或 --global 选项可对软件进行全局安装,全局安装需要管理员权限,所以需要提前以管理员权限运行的 Pow­er­Shell 。...sudo的成就 使用 scoop list 命令查看已装软件,全局安装的软件末尾会有 *global* 标志。...scoop install -gk # 卸载全局软件(并删除配置文件) $ scoop uninstall -p # 卸载全局软件(并删除配置文件) $ sudo scoop

    6.4K23

    彻底卸载Office 2016 或 Office 365

    文章目录[隐藏] 1.删除安装包 2.删除计划任务 3.结束 Click To Run 进程 4.删除 Office 服务 5.删除 Office 相关文件 6.删除注册表 7.删除开始菜单快捷方式 8....卸载其他组件 9.其他 某些异常情况下,Office 2016 或 Office 365 可能无法通过添加删除程序进行卸载,各位可以通过以下方法手动卸载。...1.删除安装包 打开 Office 365 安装文件夹,32位系统通常为 C:\Program Files\ ,64位系统通常为 C:\Program Files (x86)\ 删除安装文件夹,Microsoft...*.exe 4.删除 Office 服务 以管理员权限打开命令提示符,执行: sc delete Clicktorunsvc 5.删除 Office 相关文件 同时按下 Windows 以及 R,打开运行对话框...8.卸载其他组件 以管理员权限打开命令提示符 对于 x64 操作系统上运行 x86 版本的 Office 2016,运行: MsiExec.exe /X{90160000-008F-0000-1000-

    5K10

    Windows系统封装学习

    WeiyiGeek.进入审核模式 注意事项: 启动到审计模式,你可以使用内置管理员帐户登录系统。...登录到系统之后, auditUser 配置阶段会立即禁用内置管理员帐户,下次重新启动计算机时,内置管理员帐户将保持禁用状态。...最后一个cmdlet的输出中,检查程序包显示为已安装的用户。从参考计算机中删除这些用户帐户,或使用这些用户帐户登录到计算机。然后,步骤4中运行cmdlet以删除Appx包。 b....万能驱动7优化了硬件检测与驱动安装效率,万能驱动6二次扫描的基础上增加三次扫描,以应对多级设备问题,从而解决某些蓝牙设备、读卡器等无法安装驱动的情况。...#驱动恢复 (3)/DelayStartup[=附加参数1[,附加参数2[,附加参数N]] #PE系统下,设置万能驱动7在下一次进入目标系统桌面自动运行; (4)/DelDrvOffline[=

    3.2K43

    Windows系统封装学习

    你可以使用内置管理员帐户登录系统。...登录到系统之后, auditUser 配置阶段会立即禁用内置管理员帐户,下次重新启动计算机时,内置管理员帐户将保持禁用状态。...最后一个cmdlet的输出中,检查程序包显示为已安装的用户。从参考计算机中删除这些用户帐户,或使用这些用户帐户登录到计算机。然后,步骤4中运行cmdlet以删除Appx包。 b....万能驱动7优化了硬件检测与驱动安装效率,万能驱动6二次扫描的基础上增加三次扫描,以应对多级设备问题,从而解决某些蓝牙设备、读卡器等无法安装驱动的情况。...#驱动恢复 (3)/DelayStartup[=附加参数1[,附加参数2[,附加参数N]] #PE系统下,设置万能驱动7在下一次进入目标系统桌面自动运行; (4)/DelDrvOffline[=

    2.3K10
    领券