首页
学习
活动
专区
工具
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如果这些文件删除后,其他程序仍然要使用它,可能其它程序的功能将受影响。

1.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 小结 这几个工具配合简直如虎添翼,那怕是稍微懂点电脑的

    38410

    提升的 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 如果创建了符号链接,还需将其删除

    1.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.4K10

    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.3K20

    基于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选择导出位置 (前面还有协议等设置)运行脚本开始生成安装打开,安装目录里有自带卸载程序

    11410

    【玩转腾讯云】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.7K30

    常用软件打包类型及静默安装参数(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”可以看见安装类型。

    16K23

    NVM-Windows – Windows随意切换node版本 – 开源项目

    在Windows上安装Node.js环境并实现版本切换,通常可以使用nvm-windows(Node Version Manager for Windows)。以下是详细步骤: 1....安装 nvm-windows: 解压下载的 ZIP 文件,并运行 nvm-setup.exe。 按照安装向导完成安装。...其他常用 nvm 命令 列出已安装的 Node.js 版本:nvm list 卸载 Node.js 版本:nvm uninstall 14.17.0 注意事项 确保在安装 nvm-windows 时,选择的安装路径没有空格...在使用 nvm 命令时,确保命令提示符以管理员身份运行,以避免权限问题。 通过以上步骤,你就可以在 Windows 上成功安装 Node.js 环境并方便地切换不同版本。...实操演示 nvm-windows 在管理员 shell 中运行。您需要powershell以管理员身份启动或命令提示符才能使用 nvm-windows 使用普通命令行会报错!

    42510

    【工具系列】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

    8.6K23

    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)时,此参数是必需的。

    2K20

    如何在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.2K50

    Windows系统封装学习

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

    3.3K44

    Windows系统封装学习

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

    2.4K10
    领券