静默安装与卸载命令详解

4星 · 超过85%的资源 需积分: 10 24 下载量 195 浏览量 更新于2024-10-18 收藏 7KB TXT 举报
"这篇文档介绍了如何进行无声安装(silent install)和无声卸载(silent uninstall),涉及到了使用命令行参数和setup.iss脚本文件的方法。" 在IT领域,无声安装(silent install)和无声卸载(silent uninstall)是自动化软件部署的重要组成部分,尤其在大规模系统部署或无人值守的场景下非常实用。这种技术允许用户在不显示任何用户界面的情况下完成软件的安装或卸载过程,大大提高了效率。 ### Silent Install (无声安装) 1. **命令行参数**:使用`setup.exe -s -f1<Path\setup.iss> -f2<Path\LogFile>`的命令行语法可以执行无声安装。其中,`-s` 参数表示静默模式,`-f1` 指定了响应文件(response file)的位置,`-f2` 定义了日志文件的位置,用于记录安装过程的详细信息。 2. **setup.iss 文件**:这是Inno Setup等安装程序制作工具使用的脚本文件,包含了安装过程中的所有设置和参数。通过修改setup.iss文件,可以定制安装行为,如安装路径、组件选择等。 3. **创建setup.iss**:使用cmd命令`cmd /c setup.exe -rb <path_to_output_folder>\setup.iss` 可以生成一个基于当前安装步骤的setup.iss文件,以便后续的无声安装使用。 4. **检查安装结果**:安装过程中,可以通过读取日志文件(LogFile)并检查返回结果(Result)来确认安装是否成功。 ### Silent Uninstall (无声卸载) 1. **生成unsetup.iss**:与安装过程类似,卸载时也可以先通过命令行生成unsetup.iss文件,然后使用这个文件进行无声卸载。 2. **命令行参数**:无声卸载的命令行语法是`setup.exe -s -f1<Path\unsetup.iss> -f2<Path\LogFile>`,与安装命令类似,只是使用了unsetup.iss文件。 3. **检查卸载结果**:同样地,可以通过日志文件监控卸载进度,确保卸载过程顺利进行。 ### 其他参数 - `-a`:表示有额外的开关将被传递给包内的可执行文件(Setup.exe)。 - `/f1` 和 `/f2`:这两个参数在其他安装程序中可能有不同的名称,但功能相似,都是为了指定响应文件和日志文件。 在实际操作中,要根据具体的安装程序类型(如Inno Setup、NSIS等)和需求来调整命令行参数和setup.iss脚本内容。确保所有的路径和文件名正确无误,以避免出现安装或卸载失败的情况。同时,良好的日志记录有助于排查可能出现的问题,确保无声安装和卸载的顺利进行。

解释下面这段cmd文件的作用:CLS REM The following is required in all INSTALL.CMD files if exist c:\system.sav\util\SetVariables.cmd Call c:\system.sav\util\SetVariables.cmd set version=1.05 Set block=%~dp0 set errcodeinstallinstallinstallinstallinstallinstallinstall=0 CD /D "%block%" set Log_Folder=%~d0\programdata\HP\logs if not exist "%Log_Folder%" md "%Log_Folder%" set Install_Log=%Log_Folder%\HotkeyInstall.log REM Remove the REM from the next line if your component does not support Silent Install (Application Recovery) REM Erase /F /Q *.CVA REM Add the command-line to have your component to be installed properly Pushd src if exist "%~dp0src\Uninstall.cmd" ( call "%~dp0src\Uninstall.cmd" ) if %errorlevel% NEQ 0 ( echo. >> "%Install_log%" echo *exit /b %errcodeinstall% >> "%Install_log%" echo. >> "%Install_log%" echo ^<^< %~f0 >> "%Install_log%" echo ^<^< %date% %time% >> "%Install_log%" echo. >> "%Install_log%" goto :END ) if exist "%~dp0src\InstallFusion.cmd" ( call "%~dp0src\InstallFusion.cmd" ) if %errorlevel% NEQ 0 ( echo. >> "%Install_log%" echo *exit /b %errcodefusion% >> "%Install_log%" echo. >> "%Install_log%" echo ^<^< %~f0 >> "%Install_log%" echo ^<^< %date% %time% >> "%Install_log%" echo. >> "%Install_log%" goto :END ) if exist "%~dp0src\InstallDriver.cmd" ( call "%~dp0src\InstallDriver.cmd" ) if %errorlevel% NEQ 0 ( echo. >> "%Install_log%" echo *exit /b %errcodedriver% >> "%Install_log%" echo. >> "%Install_log%" echo ^<^< %~f0 >> "%Install_log%" echo ^<^< %date% %time% >> "%Install_log%" echo. >> "%Install_log%"goto :END ) if exist "%~dp0src\InstallApp.cmd" ( call "%~dp0src\InstallApp.cmd" ) if %errorlevel% NEQ 0 ( echo. >> "%Install_log%" echo *exit /b %errcodeapp% >> "%Install_log%" echo. >> "%Install_log%" echo ^<^< %~f0 >> "%Install_log%" echo ^<^< %date% %time% >> "%Install_log%" echo. >> "%Install_log%" goto :END ) :END Popd REM Erase failure flag file when install succeeded. Most applications return zero to indicate success. ECHO %ERRORLEVEL% >> FAILURE.FLG IF %ERRORLEVEL% EQU 0 ERASE /F /Q FAILURE.FLG IF %ERRORLEVEL% EQU 3010 ERASE /F /Q FAILURE.FLG echo %date% %time% "Fusion=" %errcodefusion% >> %install_log% echo %date% %time% "Driver=" %errcodedriver% >> %install_log% echo %date% %time% "App=" %errcodeapp% >> %install_log% EXIT /B %ERRORLEVEL%

2023-07-20 上传

npm ERR! code 1 npm ERR! path C:\Users\Administrator\AppData\Roaming\npm\node_modules\windows-build-tools npm ERR! command failed npm ERR! command C:\WINDOWS\system32\cmd.exe /d /s /c node ./dist/index.js Downloading python-2.7.15.msi npm ERR! [============================================>] 100.0% of 19.3 MB (5.52 MB/s) npm ERR! Downloaded python-2.7.15.msi. Saved to C:\Users\Administrator\.windows-build-tools\python-2.7.15.msi. Downloading vs_BuildTools.exe npm ERR! [============================================>] 100.0% (0 B/s) npm ERR! Downloaded vs_BuildTools.exe. Saved to C:\Users\Administrator\.windows-build-tools\vs_BuildTools.exe. npm ERR! npm ERR! Starting installation... npm ERR! Downloading installers failed. Error: TypeError: 'process.env' only accepts a configurable, writable, and enumerable data descriptor npm ERR! at Function.defineProperty (<anonymous>) npm ERR! at Object.removePath (C:\Users\Administrator\AppData\Roaming\npm\node_modules\windows-build-tools\dist\utils\remove-path.js:11:12) npm ERR! at Object.install (C:\Users\Administrator\AppData\Roaming\npm\node_modules\windows-build-tools\dist\install\index.js:29:19) npm ERR! at C:\Users\Administrator\AppData\Roaming\npm\node_modules\windows-build-tools\dist\start.js:17:19 npm ERR! at Object.download (C:\Users\Administrator\AppData\Roaming\npm\node_modules\windows-build-tools\dist\download.js:35:5) npm ERR! at process.processTicksAndRejections (node:internal/process/task_queues:95:5) npm ERR! at async Object.aquireInstallers (C:\Users\Administrator\AppData\Roaming\npm\node_modules\windows-build-tools\dist\aquire-installers.js:32:13) { npm ERR! code: 'ERR_INVALID_OBJECT_DEFINE_PROPERTY' npm ERR! } npm ERR! windows-build-tools will now exit.

2023-07-22 上传
2014-05-11 上传
优秀的软件越来越多,而我们电脑上安装的程序也就越来越多,有时候我们想对一些软件做一些修改或者知道安装某款软件时该软件都安装了些什么文件,这时我们就可以使用Total Uninstall Pro 6.4.1。 Total Uninstall 是一款全功能的卸载程序,其包含三大功能模块: 已安装程序 模块:分析现有安装并创建有安装变更的日志。它可在没有程序自带卸载程序的帮助下就可卸载程序。 已监视程序 模块:在新程序安装期间,监视安装程序在您系统上所在的任何修改。在不使用程序自带的卸载程序情况下,您也能够对程序进行彻底的卸载,并移除残留的项目。 清理程序器:扫描并安全的移除残留的项目。 特点: 原生支持 32位/64位 Windows XP SP3/Vista/Windows 7/Windows 8 精准分析现有安装并创建安装变更日志 批量分析和卸载程序 新程序安装期间,监视其对注册表和文件系统所做的修改 完全彻底的卸载已分析/已监视的程序 分组管理已安装/已监视程序* 通过关键字轻松的找到要卸载的程序 为每个已安装/已监视程序产生简要信息/详细信息 用户可配置用于分析/监视的配置以及检测的修改视图* 详细的卸载日志 在检测到修改方面的强大搜索功能* 扫描并安全的移除残留项目 独立运行的通知程序通知新程序的安装* 导出安装/卸载用注册表项目* 导出或打印已安装/已监视程序列表 导出或打印检测到的修改信息* 查看并应用待决文件重命名操作不用重启 已安装程序模块 分析: Total Uninstall 列出已安装到您系统上的程序。从列表内选择程序,开始分析过程。如果选中绑定(批处理)复选框,可一次选择多个程序进行卸载。选中程序后,几秒后将在 变更 页显示检测到的注册表和文件系统项目。可以尝试不同的分析级别以获取最佳结果。 卸载: 1.可创建系统恢复点 2.可创建要卸载程序的副本。 3.启动程序自带的卸载程序 4.使用在分析期间检测到的修改卸载残留项目 已监视程序模块: 监视程序的安装过程 1.安装程序前,Total Uninstall 将创建预安装系统快照 2.照例安装程序 3.Total Uninstall 创建后安装系统快照。它将与预安装快照进行对比,产生安装日志。 卸载: 1.可创建系统恢复点 2.可创建要卸载程序的副本。 3.如果认为需要,则启动程序自带的卸载程序 4.使用在监视安装期间检测到的修改卸载残留项目 扫描时间: 1.通常,引起扫描时间过长的主要原因是硬盘的内容,而不是注册表。硬盘在系统重启后首次扫描时速度低,之后由于 Windows 的文件系统缓存会显著的缩减扫描时间。 2.扫描时排除临时文件夹,如 Firefox 的因特网临时文件夹(已经排除了一些标准的位置)。以相同的概念排除其他文件夹,包括存储有图片或 MP3 的文件夹。这也是个安全措施。 3.扫描驱动器时不要包含只有数据或任何您不计划作为安装目标使用的驱动器,除安装有 Windows 的引导驱动器外。(通常情况下,Windows 是安装在引导驱动器上的)。 4.扫描时,请不要在配置内添加任何与默认已有项目无关的注册表项,尤其是 HKEY_CLASSES_ROOT,它只是其它注册表项的映射,打开时由于注册表的重定向还需要一定的时间。 5.不要从已配置的默认注册表排除列表内移除任何项目。其某些项目可避免重复扫描相同的注册表项。 6.如果您将所有的程序安装到了一个文件夹内,则在扫描时不要包含整个驱动器时(除系统驱动器外),请只包含那个文件夹,如添加 d:\Programs 而不是 d:\ 7.反病毒程序,防火墙或其它安全软件会拦截注册表和文件的访问,这将增加扫描时间。在创建快照时,通过开启/关闭反病毒程序的实时保护(或类似的选项)进行来进行影响程度的评估。 8.在扫描配置内,如开启选项“包含文件详细信息 -> 版本”,则需要额外的磁盘访问动作。但您几乎用不到这些额外的信息。 9.进行硬盘碎片整理。整理过的硬盘扫描速度更快。 卸载速度: 卸载速度低只要是由大量删除大量的文件到回收站引起的。 卸载期间可以随时清空回收站。 使用适合的功能模块:“已安装程序”或“已监视程序” 监视程序的安装是确保您能完全卸载的最佳方法。已监视程序模块是安装和卸载程序的最佳方法,就精确性来说它不会凌驾于其它卸载方法之上。其缺点就是每次安装时,用户必须启动并完成监视过长,这大概需要两分钟左右。 已安装程序模块是用于卸载非监视/已安装的程序,监视安装不再是唯一的选择了。对于很多安装来说,“已安装程序”模块的效果可达 100% 或接近 100%,但不保证受监视的程序也能得到这样的效果。 Total Uninstall 积极维护保证最精确的分析已安装的程序。保证最好的卸载效果,并且很大的程度上超过了其它同类卸载工具产品。 常规问题解答: 1.Total Uninstall 将已卸载程序的副本保存到什么位置了?我要恢复这个程序。 要从备份恢复已卸载的程序,请转到程序主界面,并使用菜单 文件 -> 从备份恢复程序… 默认的备份文件位置: Windows XP C:\Documents and Settings\All Users\Martau\Total Uninstall 6\Backup Windows Vista/7/8 C:\ProgramData\Martau\Total Uninstall 6\Backup 2.如果我更改了程序数据路径从原始的 A 到 B,并且Total Uninstall 也移动了全部数据到新文件夹并且产生了 tui.ini 文件。可是,当下次程序启动时,它忽略了在B位置已保存好的设置,在 A 位置重新重建了设置文件,为什么? 要解决这个问题,请注册您的程序副本,只有已注册的专业版才能永久保存程序数据路径的改变。 3.在已安装程序列表上,某些项目的图标上带有一个黄圈感叹号。名称也不是正常的 “83579989″。在 TU 里这个感叹号表示什么? 那些是 MSI 产品残留或部分安装的程序。您要自己确定其是否有用。如果没用,您可以卸载它们。如果检测到的修改没有显示出它与任何使用的产品有关,那么可以安全的卸载它。 4.如果监视的安装程序,在安装期间请求重启系统,我应该怎么做? 请允许重启系统。Total Uninstall 将会随 Windows 启动完成监视过程。在安装前和安装后期间,您可以对监视的程序做任何事情,比如您可以重启系统多次,安装多个程序或手动编辑注册表等。结束之后将显示单独的日志。 5.扫描阶段速度低或临时悬挂,这是为什么? TU 要获取“之前的”快照的新旧程度。进度条到达大约 70% 左右时会停留几秒。之后,恢复到正常速度并且最终的比较是非常迅速的。 可能的原因; - 反病毒程序干扰了扫描过程。请查看任务管理器内所有用户的进程列表,检查下是哪个进程消耗了 CPU 和内存。 - 硬盘的物理错误可能会触发扇区重定位。操作期间该症状会冻结整个系统。 - 由系统重启后用于加速硬盘物理访问的文件系统缓存缺失引起的延迟。 * 已通过360病毒检测.