Привет народ StackOverflow,пакетный файл, запрос реестра
Я пытаюсь запросить местоположение последующего реестра (каждая папка здесь) HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall
В есть случайные числа так:
{071c9b48-7c32-4621-a0ac-3f809523288f}
В каждом из этих случайных чисел мне нужно проверить, содержит ли ключ «DisplayName», который находится в каждом из этих мест, определенный текст, позволяет сказать «OverFlow».
Я сделал несколько запросов, но не так, если кто-то может помочь, это было бы здорово!
EDIT: Я сделал некоторые успехи, но я сталкиваюсь с проблемой (я сделал много исследований ...)
Ниже то, что я до сих пор:
@echo off
setlocal
:RemoveCVCP
set PythonReg=
for /f "tokens=1" %%A in ('reg query HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall /s /v "DisplayName" ^| find "Python"') do set "PythonReg=%%A"
if %ERRORLEVEL% neq 0 (
GOTO RemovePyCP)
echo %PythonReg%
endlocal
pause
Что я m пытается сделать цикл через «KLM \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ Uninstall», и посмотрите на «DisplayName», если данные содержат «Python», а затем удалите его. и продолжайте идти, пока их больше нет.
Прямо сейчас я тестирую это с помощью эха, но он его удалит.
(Я просто использую Python в качестве примера, я уже удалил все остальное, что связано с программным обеспечением, я пытаюсь удалить, это последнее место.)
Спасибо, Майкл
Вы уверены, что хотите искать только записи, как описано? (кстати, это [GUID] (https://en.wikipedia.org/wiki/Globally_unique_identifier) s). Есть и другие записи, некоторые приложения перечислены там по имени. – CristiFati
Подождите .. Как насчет этого? http://www.fixedbyvonnie.com/2014/07/view-installed-programs-one-powershell-command/ Это должно показать детали, которые вы ищете. – Leptonator
Мне нужно сделать это в пакетном режиме, так как в моем сценарии всего 700 строк. – Mike