Это старая версия документа!


Удаление ненужных платформ 1с с ПК под управлением windows

Экспорт в PDF Преобразовать страницу в формат Open Document

Дата создания: 2025/09/03 06:25 (C) mihanik

Дано

ПК под управлением Windows, на котором установлено множество разных платформ 1С.

Надо

Удалить все лишние платформы кроме нужных.

Решение

Скрипт работает на Windows любой разрядности.
Удаляются ненужные платформы любой разрядности.

Шаг 1

Создаём скрипт с именем UninstallOld1C.vbs .

Обязательно! В скрипте через запятую или пробел указываем версии платформ 1С Предприятия, которые нужно сохранить.</note> Например, так: <code> strSaveVersions = «8.3.24.1667 8.3.24.1667» </code> <note important>Не забываем использовать правильную кодировку текста скрипта Windows-1251 :!:</note> <code vbs UninstallOld1C.vbs> ' Скрипт удаления старых/не нужных версий платформ 1С Option Explicit On Error Resume Next Dim objWMIService, colItems, objItem, objShell Dim strComputer, strSaveVersions, strCommand ' Устанавливаем имя компьютера. По умолчанию задаём имя локального компьютера в виде «.» strComputer = «.» 'Через запятую или пробел указываем версии платформ 1С Предприятия, которые нужно сохранить. strSaveVersions = «8.3.24.1667» ' Создаем объект для работы с WMI Set objWMIService = GetObject(«winmgmts:\\» & strComputer & «\root\cimv2») ' Получаем список установленных программ Set colItems = objWMIService.ExecQuery(«Select * from Win32_Product», , 48) ' Перебираем все установленные программы For Each objItem in colItems ' Ищем в имени программы признаки того, что это «1С: Предприятие» версии 8.3 if instr(cstr(objItem.Name),«8.3.») then wscript.echo «Has been found 1С 8.3: » & objItem.Name ' Проверяем необходимость удаления найденной платформы if instr(strSaveVersions,cstr(objItem.Version)) then ' Сохраняемую платформу не удаляем wscript.echo «It is a persisted 1C 8.3 platform: » & objItem.Name wscript.echo objItem.Name wscript.echo « Version: » & objItem.Version wscript.echo « Installation date: » & objItem.InstallDate wscript.echo String(40, «-») else ' Если платформу сохранять не нужно, то удаляем её wscript.echo «Removing the 1C 8.3 platform: » & objItem.Name 'strCommand = «cmd.exe /c pause» strCommand = «wmic product where name=»«» & cstr(objItem.Name) & «»« call uninstall /nointeractive» wscript.echo strCommand ' Создаем объект WScript.Shell Set objShell = CreateObject(«WScript.Shell») objShell.Run strCommand, 0, true Set objShell = Nothing end if end if Next Set colItems = Nothing Set objWMIService = Nothing WScript.Quit </code> ==== Шаг 2 ==== Размещаем скрипт в какой-нибудь папке. <note>Для определённости пусть это будет папка с именем c:\temp\</note> ==== Шаг 3 ==== Запускаем командную строку от имени администратора. <note>Как запустить командную строку от имени администратора описано тут.</note> Шаг 4 Запускаем наш скрипт при помощи сервера сценариев cscript. <code bat> cscript c:\temp\UninstallOld1C.vbs </code> ===== Источники ===== ⇑ Наверх ⇑
Только авторизованные участники могут оставлять комментарии.
программирование_и_scripting/vbscript/удаление_ненужных_платформ_1с_с_пк_под_управлением_windows.1756881809.txt.gz · Последнее изменение: 2025/09/03 06:43 — mihanik
Яндекс.Метрика