标题: [问题求助] PowerShell获取系统中安装的浏览器的exe路径 [打印本页]
作者: 小白龙 时间: 2024-11-11 04:53 标题: PowerShell获取系统中安装的浏览器的exe路径
我想获取系统中安装的edge和chrome浏览器的exe文件的路径, 使用gpt问了十几轮, 都没有搞到稳定的方法, 求路过大佬支招
方法3可以, 但是在自定义安装路径时就不行了, 方法4不行, 而且太慢了
Gpt的方法有如下:
1.不行!- # 查找 Google Chrome 的安装路径
- $chromePath = Get-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Uninstall\Google Chrome" -Name "InstallLocation" -ErrorAction SilentlyContinue
- if ($chromePath) {
- Write-Host "Google Chrome 安装路径: $($chromePath.InstallLocation)\chrome.exe"
- }
-
- # 查找 Microsoft Edge 的安装路径
- $edgePath = Get-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Uninstall\Microsoft Edge" -Name "InstallLocation" -ErrorAction SilentlyContinue
- if ($edgePath) {
- Write-Host "Microsoft Edge 安装路径: $($edgePath.InstallLocation)\msedge.exe"
- }
复制代码
2.不行!- # 查找 Google Chrome 的路径
- $chrome = Get-Command chrome -ErrorAction SilentlyContinue
- if ($chrome) {
- Write-Host "Google Chrome 的路径: $($chrome.Source)"
- }
-
- # 查找 Microsoft Edge 的路径
- $edge = Get-Command msedge -ErrorAction SilentlyContinue
- if ($edge) {
- Write-Host "Microsoft Edge 的路径: $($edge.Source)"
- }
复制代码
3.可以, 但是有时用户会自定义安装目录, 就不行了- # 检查是否存在 Google Chrome
- if (Test-Path "C:\Program Files\Google\Chrome\Application\chrome.exe") {
- Write-Host "Google Chrome 路径: C:\Program Files\Google\Chrome\Application\chrome.exe"
- }
-
- # 检查是否存在 Microsoft Edge
- if (Test-Path "C:\Program Files (x86)\Microsoft\Edge\Application\msedge.exe") {
- Write-Host "Microsoft Edge 路径: C:\Program Files (x86)\Microsoft\Edge\Application\msedge.exe"
- }
复制代码
4.不行!- # 使用 WMI 查询安装的程序
- $installedApps = Get-WmiObject -Class Win32_Product | Where-Object { $_.Name -match "chrome|firefox|msedge|iexplore" }
-
- foreach ($app in $installedApps) {
- Write-Host "$($app.Name) 安装路径: $($app.InstallLocation)\$($app.Name).exe"
- }
复制代码
作者: czjt1234 时间: 2024-11-11 10:14
这个edge的路径,好像是各个版本的win10中都不同
有个思路是综合以上的各种判断方法
比如先读取桌面edge快捷方式,如果桌面没有就读取开始菜单里的edge快捷方式
再没有就读取快速启动栏,或固定在任务栏的
最后再到注册表去读
作者: flashercs 时间: 2024-11-11 12:47
- Get-ChildItem -Path @('HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall',
- 'HKLM:\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall',
- 'HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall',
- 'HKCU:\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall') -ErrorAction SilentlyContinue | `
- Get-ItemProperty -Name DisplayName, DisplayVersion, InstallLocation, UninstallString -ErrorAction SilentlyContinue |`
- Where-Object { $_.DisplayName -eq "Microsoft Edge" } | Format-List -Property DisplayName, DisplayVersion, InstallLocation, UninstallString
复制代码
欢迎光临 批处理之家 (http://bathome.net./) |
Powered by Discuz! 7.2 |