narga: (Default)
Как тихо и незаметно для пользователей удалить всякую нечисть вроде тулбаров, punto, яндексов и прочего.
Во избежание вот такого вот:



Делаем батник и запускаем.

::Bing bar
msiexec /X {D322A9E3-758B-4D60-A7C4-65C88FD378D0} /quiet /norestart
msiexec /X {1E03DB52-D5CB-4338-A338-E526DD4D4DB1} /quiet /norestart
msiexec /X {B4089055-D468-45A4-A6BA-5A138DD715FC} /quiet /norestart
msiexec /X {35F0845F-9BF3-4978-98AC-87F35D879E8B} /quiet /norestart

::Ask bar
msiexec /X {86D4B82A-ABED-442A-BE86-96357B70F4FE} /quiet /norestart

::Punto
msiexec /X {E08ED765-63D3-4B35-B941-E1D2D544AC48} /quiet /norestart
msiexec /X {EE680C8E-23FE-4717-A2B8-E99878A7C0AE} /quiet /norestart
msiexec /X {D8FD76A2-19C4-4037-B2CE-3AE973D40C8A} /quiet /norestart
msiexec /X {C2090F14-5D49-430F-A8BD-6D33B0EE0A48} /quiet /norestart
msiexec /X {6F03DF2C-A0DC-4506-96D7-C0712A4904F4} /quiet /norestart

::Яндекс:
::Элементы яндекса
msiexec /X {EE24665C-844A-4489-9F11-70E41F4EE476} /quiet /norestart
msiexec /X {772D08A4-37DE-44A2-AF89-3355EBE68B68} /quiet /norestart
msiexec /X {B1DDC387-5E2C-4CF4-BD8B-05B65E987B0C} /quiet /norestart
::Яндекс бар
msiexec /X {11EA1C75-DB0D-410B-B63B-20916EECD568} /quiet /norestart
msiexec /X {ABAC2ECB-874B-4D35-9136-811C2D6B6AE9} /quiet /norestart
msiexec /X {35015585-072D-4D95-9509-E6205C6F7991} /quiet /norestart
msiexec /X {FBB54511-4D35-4EE0-872C-BB5A9617EC8F} /quiet /norestart
msiexec /X {0F18EEF4-323F-4015-9ED5-6454F0AB7727} /quiet /norestart

::Mail.ru
msiexec /X {65C64E3D-539F-4B81-993B-364C6169F8F5} /quiet /norestart
msiexec /X {9ACADADD-3804-4364-A63E-B2B911581F31} /quiet /norestart
msiexec /X {12644DC5-2271-442B-816F-8CFFD3DDDF32} /quiet /norestart
msiexec /X {FBFBBDD0-EC37-4152-BB77-7D54322AF953} /quiet /norestart
msiexec /X {CD95D125-2992-4858-B3EF-5F6FB52FBAD6} /quiet /norestart
msiexec /X {6F03DF2C-A0DC-4506-96D7-C0712A4904F4} /quiet /norestart

::Google bar
msiexec /X {18455581-E099-4BA8-BC6B-F34B2F06600C} /quiet /norestart

::Rambler toolbar
msiexec /X {01C9B140-F6BE-11E1-8128-742F68A1264B} /quiet /norestart
msiexec /X {9C288540-F6AA-11E1-842E-742F68A1264B} /quiet /norestart

::Skype click to call
msiexec /X {B6CF2967-C81E-40C0-9815-C05774FEF120} /quiet /norestart

Народ, если у вас есть чем дополнить - пишите в каменты.
narga: (Default)
При установке Kaspersky Endpoint Security 10 на пк в сети столкнулась со следующей проблемой - установка прерывается с руганью на якобы установленный Check Point VPN client driver. Среди установленных программ ничего похожего нет, в реестре чисто. Полностью отлуп выглядит так:

Kaspersky Endpoint Security 10 для Windows (10.1.0.867): Remote installation completed with error on client computer: -1 (Установка Kaspersky Endpoint Security 10 для Windows не может быть выполнена, так как на компьютере установлена сторонняя программа: Check Point VPN client driver. Чтобы выполнить установку Kaspersky Endpoint Security 10 для Windows необходимо удалить стороннюю программу стандартными средствами Microsoft Windows или иными способами.

Что характерно - установка endpoint 8 проходит успешно. Но ни удалить 8, ни поставить 10 уже не получается.
Техподдержка с удалением неизвестно чего не справилась, пришлось гуглить. Решение нашлось на англоязычном форуме Касперов, а именно - удалить ключ реестра HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\vsdatant.
Таки это оставшийся кусок файрвола ZoneAlarm.

Проще всего распространить батник со следующим содержимым reg delete HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\vsdatant /f.
После этого установка проходит успешно.
narga: (Default)
Тут даже не просто удалить, тут убить упрямую тварь.
Кто не знает, принцип такой:

Во-первых торрент запускается откуда угодно и не требует админских прав.
Скачиваешь инсталлятор, он прописывается по дефолту в appdata.
Удаляешь его /uninstall - дефолтно удаляет просто строчку из реестра, все файлы остаются.
Из того что осталось - клиент спокойно запускается.
Штатно удаляешь файлы.
Удаляет всё кроме utorrent.exe из папки в appdata.
Запускаешь exe - опять же он спокойно запускается.

В итоге процентов 80 удаляем так:

"%appdata%\uTorrent\uTorrent.exe" /UNINSTALL /s
"%programfiles%\utorrent\uTorrent.exe" /UNINSTALL /s
"%ProgramFiles(x86)%\utorrent\uTorrent.exe" /UNINSTALL /s

rmdir "%appdata%\uTorrent" /s /q
rmdir %programfiles%\utorrent" /s /q
rmdir %ProgramFiles(x86)% /s /q

При этом у нас торренты на цисках убиваются, на проксе убиваются. Но есть ещё филиалы, есть ещё умники с 3g-свистками. Из хэша хрен запретишь, навскидку вижу 18 версий.
Делаю политику.
narga: (Default)
Руководство компании заказало разработку фирменного стиля. Бланки бланками, а на техотделе задача распространить новые шрифты.
Ниже - краткое руководство по массовому распространению шрифтов ttf\otf на пользователей.

How to deploy fonts via gpo.

Установка шрифтов, как известно, происходит в два этапа.

1. Копируем шрифты в папку windows\fonts
2. Регистрируем их в ветке HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Fonts
Если пользователь администратор, ему достаточно скопировать шрифты в fonts.

Для обычного пользователя приходится делать следующее:

1. Устанавливаем шрифты вручную из-под администратора на подопытную машину.
2. Заходим в ветку HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Fonts
3. Правой мышкой по ветке - экспортировать.
4. Открываем полученный reg-файл блокнотом.
5. Удаляем из него все прочие шрифты кроме нужных нам.
6. Сохраняем.
7. Итого полученный файл будет вида:
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Fonts]
"Name_font (TrueType)"="name_fonts.otf"
8. Копируем шрифты в %iwndir%\fonts пользователя.
9. Запускаем на его ПК из-под администратора файл reg.
10. Профит.

Дабы упростить задачу, можно написать скрипт. Но я человек ленивый, мне проще сделать инсталлятор.
Сделать мы это проще всего при помощи Advanced Installer.
Итак, выполняем пункты 1-7.
Далее.

1. Устанавливаем и запускаем программу Advanced Installer.
2. Installer => Generic Templates => Simple.
3. Product details => Заполняем нашей информацией.
4. Install parameters - Выбираем версии ОС, на которых нам необходим запуск.
5. Files and folders => Target computers => Windows volume => windows => Fonts => files => add files. Добавляем наши шрифты.
6. Registry => import reg => import reg files => добавляем наш reg-файл.
7. СОхраняем наш проект.
8. Build
9. Получаем наш инсталлятор.
10. Профит.

К слову, в последней версии Advanced Installer (9.9) пункт 6 можно исключить. Для этого достаточно при установке файлов шрифтов (п.5) зайти в свойства каждого шрифта, зайти на вкладку registration и поставить галку на "register font".

Чтобы распространить шрифты через GPO, а также получить лог-файл с перечнем ПК, на которых установились шрифты, можно создать батник со следующим содержимым:


if not exist %windir%\FILENAME.txt (
msiexec /i \\network\FILE.msi
copy \\NETWORK\FILENAME.txt %windir%\FILENAME.txt
echo %COMPUTERNAME%.%USERDOMAIN% >> \\NETWORK\log.txt)
fc %windir%\FILENAME.txt \\NETWORK\FILENAME.txt
if %errorlevel%==1 (
msiexec /i \\network\FILE.msi
copy \\NETWORK\FILENAME.txt %windir%\FILENAME.txt
echo %COMPUTERNAME%.%USERDOMAIN% >> \\NETWORK\log.txt)

Профит:)
narga: (Default)
Пишу простенький скрипт, вспомнилось, что как раз кто-то на днях спрашивал, как удалить раздел реестра каким-нибудь батником.
А очень просто.

reg delete HKEY_LOCAL_MACHINE\YOURKEY

Если надо провести подобную операцию в тихом режиме без запроса "согласны ли вы", добавьте в конце /f.

Если надо выполнить скрипт на удалённой машине, добавьте перед ключом два слэша и имя машины: reg delete \\COMPNAME\HKEY_LOCAL_MACHINE\YOURKEY
narga: (Default)
Если долго всматриваться в чужой код, код может начать всматриваться в тебя. В моём случае это c++, написанный через visual studio, с целыми двумя комментариями. Алгоритм простой - идём в AD за данными пользователей, формируем адресную книжку. Ну и дальше IIS это дело публикует.
А пока код для меня выглядит страшно, нужно хоть что-то в плане справочника. Сделаем его на HTML.
Тут на помощь приходит powershell. Возрадуемся, господа, ибо он поддерживает css.

В качестве css для создания приятной для глаз таблички используем что-то вроде этого:

$a = "<style>"
$a = $a + "BODY{background-color:white;}"
$a = $a + "TABLE{border-width: 1px;border-style: solid;border-color: black;border-collapse: collapse;}"
$a = $a + "TH{border-width: 1px;padding: 0px;padding-top: 10px;padding-bottom: 10px;border-style: solid;border-color: black;background-color:silver}"
$a = $a + "TD{border-width: 1px;padding: 0px;padding-bottom: 5px;padding-left: 15px;padding-top: 5px;border-style: solid;border-color: black;background-color:white}"
$a = $a + "</style>"

В шапку скрипта кладём логичное:  Import-Module ActiveDirectory

Теперь основная часть, используем get-aduser. В качестве searchbase берём нужный OU, в качестве -Properties - перечень сведений, которые хотим поместить в таблицу.

$user = Get-ADUser -SearchBase "OU=DOMAIN,DC=LOCAL" -Properties DisplayName,Title,mail,telephoneNumber,physicalDeliveryOfficeName

Если необходимо убрать из списка отключенных пользователей, используем фильтр. А именно - после get-aduser пишем  -Filter {enabled -eq $true}

Если необходимо сделать выборку по пользователям определённой группы данного OU, тоже используем фильтр со значением  -Filter {memberof -like "CN=GROUP,OU=DOMAIN,DC=LOCAL"}

Если наоборот надо исключить пользователей конкретной группы, то же самое, только со значением -nolike

Если надо установить одновременно два фильтра, делаем это по принципу -Filter {(FILTER1) -and (FILTER2)}

Теперь сам вывод.

$user | Select-Object  -Property DisplayName,Title,mail,telephoneNumber,physicalDeliveryOfficeName | ConvertTo-Html  -head $a | Out-File C:\address\file.html

Если хотим измения названия столбцов, перед ConvertTo-Html определяем выводимые имена по принципу @{Name="новое имя", ;Expression={$_."Имя атрибута"}}

Итого в нашем примере это будет выглядеть как:

| Select @{Name="ИМЯ1";Expression={$_."DisplayName"}}, @{Name="ИМЯ2";Expression={$_."Title"}}, @{Name="E-mail";Expression={$_."mail"}}, @{Name="ИМЯ3";Expression={$_."telephoneNumber"}}, @{Name="ИМЯ4";Expression={$_."physicalDeliveryOfficeName"}}

Наслаждайтесь:)
narga: (Default)
Скрипт на запуск чего угодно с логом. Почему-то народ удивляет именно это построение скрипта. Стандартный bat.

По пунктам

Если не обнаружен такой-то файл в такой-то директории: if not exist %windir%\file.txt (
Запустить программу с такого-то адреса: \\domain\programe.exe
Скопировать файл в такую-то директорию: copy \\domain\file.txt %windir%\file.txt
Лог с данными писать в файл по адресу: echo %COMPUTERNAME%.%USERDOMAIN% >> \\domain\log.txt)
Сравнить файл из директории с исходником: fc %windir%\file.txt \\domain\file.txt
Если обнаружены ошибки: if %errorlevel%==1 (
Запустить программу с такого-то адреса: \\domain\program.exe
Скопировать файл в такую-то директорию: copy \\domain\file.txt %windir%\file.txt
Лог с данными писать в файл по адресу: echo %COMPUTERNAME%.%USERDOMAIN% >> \\domain\log.txt)

Удобная штука.

#Понятно, что если потребуется дальнейший запуск программы на одном конкретном ПК, достаточно изменить хотя бы один символ в локально лежащем файле file.txt. Если требуется запуск на всех ПК сети, меняем файл \\domain\file.txt

Profile

narga: (Default)
narga

January 2025

S M T W T F S
   1234
567891011
12131415161718
19202122232425
2627282930 31 

Syndicate

RSS Atom

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Sep. 3rd, 2025 08:42 pm
Powered by Dreamwidth Studios