[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[系统相关] 求生成电脑安装软件清单及对应文件安装目录的bat脚本

求一个可以生成电脑安装软件清单及对应文件安装目录的bat

回复 1# 联想不是你的


    Win7? Win10? Win11?
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

回复 1# 联想不是你的


V1.bat
  1. # & cls & @cd /d "%~dp0" & powershell -c "Get-Content '%~0' | Out-String | Invoke-Expression " & pause & exit /b
  2. function Get-InstalledSoftwares
  3. {
  4.     #
  5.     # Read registry key as product entity.
  6.     #
  7.     function ConvertTo-ProductEntity
  8.     {
  9.         param([Microsoft.Win32.RegistryKey]$RegKey)
  10.         $product = '' | select Name,Publisher,Version
  11.         $product.Name =  $_.GetValue("DisplayName")
  12.         $product.Publisher = $_.GetValue("Publisher")
  13.         $product.Version =  $_.GetValue("DisplayVersion")
  14.         if( -not [string]::IsNullOrEmpty($product.Name)){
  15.             $product
  16.         }
  17.     }
  18.     $UninstallPaths = @(,
  19.     # For local machine.
  20.     'HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall',
  21.     # For current user.
  22.     'HKCU:\Software\Microsoft\Windows\CurrentVersion\Uninstall')
  23.     # For 32bit softwares that were installed on 64bit operating system.
  24.     if([Environment]::Is64BitOperatingSystem) {
  25.         $UninstallPaths += 'HKLM:SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall'
  26.     }
  27.     $UninstallPaths | foreach {
  28.         Get-ChildItem $_ | foreach {
  29.             ConvertTo-ProductEntity -RegKey $_
  30.         }
  31.     }
  32. }
  33. Get-InstalledSoftwares
复制代码
测试代码之前请做好备份

TOP

返回列表