Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - Удалить корявые ассоциации у всех юзеров

Ответить
Настройки темы
CMD/BAT - Удалить корявые ассоциации у всех юзеров

Ветеран


Сообщения: 2595
Благодарности: 247

Профиль | Отправить PM | Цитировать


вопрос возник, к которому не особо представляю, как подойти:

есть куча машин, на каждой от одного до 3 десятков юзеракков. Юзеры по дури (не все, но достаточно) ассоциировали тип файла со всякой хренью. С акроридером, с вордом, медиаплейером, 7зипом, - у кого на что хватило фантазии. Я пробовал насильно пихать в классы стандартное
HKEY\classes\.тип
@="кем считать"
+ \software\microsoft\windows nt\current version\extensions
"тип"="C:\\windows\\прога /ключ"
и т.д.

но в результате под админом всё ок, а под юзерскими акками - по-прежнему. Я сравнил реестры до и после, увидел выбор юзеров в ветках
hkey_users\S-1-5-21-#################\software\classes\.тип
@="тип_auto_file"
hkey_users\S-1-5-21-#################\classes\.тип
@="тип_auto_file"
hkey_users\S-1-5-21-#################\software\microsoft\windows\current version\FileExts\.тип\UserChoice
"hash"="#######"
"ProgId"="Applications\\Acrord32.exe"


Задача - удалить выбор юзера. У всех. (как понимаю, это заставить открывать по дефолту указанным в классах? И не придется юзерам прописывать отдельно их "выбор"? )

Я для навязывания ассоциации использовал тупо рег-файл, который psexec-ом удалённо исполнял. Но в рег-файлах вроде регулярные выражения не используются?
Как тогда?
Некий батник, который спрашивает на машине всех юзеров, и подставляет по списку их ИД как переменную в предлагаемые значения реестра? Сначала цикл списка машин, потом создание списка юзеров и цикл юзеров?
Или это можно организовать как-то более простым способом, не удаляя гланды через прямую кишку колоноскопом?

Отправлено: 11:02, 21-08-2018

 

Ветеран


Сообщения: 27449
Благодарности: 8086

Профиль | Отправить PM | Цитировать


Цитата bredych:
Юзеры … ассоциировали тип файла со всякой хренью. »
Какой именно тип? Как именно ассоциировали?

Цитата bredych:
Я пробовал насильно пихать в классы стандартное
HKEY\classes\.тип
@="кем считать"
+ \software\microsoft\windows nt\current version\extensions
"тип"="C:\\windows\\прога /ключ"
и т.д.
но в результате под админом всё ок, а под юзерскими акками - по-прежнему. »
1. Раздела HKEY\classes не существует.
2. Есть раздел HKEY_CLASSES_ROOT, который собирается из раздела «на машину» HKEY_LOCAL_MACHINE\SOFTWARE\Classes и раздела «на пользователя» HKEY_CURRENT_USER\Software\Classes (на который, в реальности, отображается подраздел HKEY_USERS\<SID>_Classes), причём значения из последнего накладываются на значения из первого и перекрывают их (то есть, «пользовательские» настройки получают приоритет над «машинными»). Более полно и точно в статье Windows registry information for advanced users:
Цитата:
HKEY_CLASSES_ROOT

Is a subkey of HKEY_LOCAL_MACHINE\Software. The information that is stored here makes sure that the correct program opens when you open a file by using Windows Explorer. This key is sometimes abbreviated as "HKCR." Starting with Windows 2000, this information is stored under both the HKEY_LOCAL_MACHINE and HKEY_CURRENT_USER keys. The HKEY_LOCAL_MACHINE\Software\Classes key contains default settings that can apply to all users on the local computer. The HKEY_CURRENT_USER\Software\Classes key contains settings that override the default settings and apply only to the interactive user. The HKEY_CLASSES_ROOT key provides a view of the registry that merges the information from these two sources. HKEY_CLASSES_ROOT also provides this merged view for programs that are designed for earlier versions of Windows. To change the settings for the interactive user, changes must be made under HKEY_CURRENT_USER\Software\Classes instead of under HKEY_CLASSES_ROOT. To change the default settings, changes must be made under HKEY_LOCAL_MACHINE\Software\Classes. If you write keys to a key under HKEY_CLASSES_ROOT, the system stores the information under HKEY_LOCAL_MACHINE\Software\Classes. If you write values to a key under HKEY_CLASSES_ROOT, and the key already exists under HKEY_CURRENT_USER\Software\Classes, the system will store the information there instead of under HKEY_LOCAL_MACHINE\Software\Classes.
Обратите особое внимание на два последних предложения, начинающихся одинаково с «If you write keys to a key under…» — это объясняет, что куда и в каком случае пишется, когда Вы, например, импортируете что-то в HKCR, а не напрямую в HKLM или в HKU.

Как удалить? Проще всего и надёжнее всего использовать групповую политику «на пользователя», и там либо логон-скриптом, либо предпочтениями. Если у Вас есть домен — всё делается в одном месте, в AD, если домена нет — придётся повозиться.
Это сообщение посчитали полезным следующие участники:

Отправлено: 11:54, 21-08-2018 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Аватара для DJ Mogarych

fascinating rhythm


Moderator


Сообщения: 6491
Благодарности: 1465

Профиль | Отправить PM | Цитировать


https://powershell.org/forums/topic/...n-please-help/

https://www.google.com/search?&q=pow...le+association

-------
Powershell 7.x | Powershell 5.1 | ffmpeg (docs)

Это сообщение посчитали полезным следующие участники:

Отправлено: 11:56, 21-08-2018 | #3


Ветеран


Сообщения: 1274
Благодарности: 564

Профиль | Отправить PM | Цитировать


bredych,
была у меня такая проблема в отделе бухгалтерии
поставил всем Universal Viewer, вызывается (вернее открывает) из контекстного меню файла по ПКМ, при желании можно соответствия на нее прописать для всех *, а потом regом или патчем восстановить буквально там пару особенных, хотя мне это и не понадобилось.

Отправлено: 18:33, 21-08-2018 | #4


Ветеран


Сообщения: 2595
Благодарности: 247

Профиль | Отправить PM | Цитировать


Цитата Iska:
и там либо логон-скриптом, либо предпочтениями. »
а напомните мне, в hklm\...\run записанное выполняется до логона, или после?
Я в том плане, если запихать рег куда-то и при логоне чтоб оно впиливалось текущему юзверю?
Чтоб не придумывать проверку на ИД юзеров и прочий гемор

alpap, установку стороннего софта "свыше" не одобряют, потому никаких костылей. Да и хочется хоть немного тупость свою в плане кодинга распинать )))

Отправлено: 10:28, 23-08-2018 | #5


Ветеран


Сообщения: 2595
Благодарности: 247

Профиль | Отправить PM | Цитировать


Цитата DJ Mogarych:
https://www.google.com/search?&q=pow...le+association »
эта ссылка выглядит интересней, но и то, требует выбор юзера..
А с первой
Цитата DJ Mogarych:
https://powershell.org/forums/topic/...n-please-help/ »
- если поставить, как советуют, двойные кавычки перед строкой, то внутри параметры одинарными отделять? Команда поймёт?

Отправлено: 10:45, 23-08-2018 | #6


Ветеран


Сообщения: 27449
Благодарности: 8086

Профиль | Отправить PM | Цитировать


bredych, у Вас домен есть?

Отправлено: 10:47, 23-08-2018 | #7


Ветеран


Сообщения: 2595
Благодарности: 247

Профиль | Отправить PM | Цитировать


Цитата Iska:
у Вас домен есть? »
глобальные политики через домен я выставлять не имею права, этим занимается организация выше нашей.
потому даже не рассматриваю вариант

Отправлено: 15:09, 23-08-2018 | #8


Ветеран


Сообщения: 27449
Благодарности: 8086

Профиль | Отправить PM | Цитировать


Как это знакомо…
Цитата:
— Ты, Жора, жарь рыбу.
— Так рыбы ж нет.
— А ты всё равно жарь, жарь…

И вариант — Вы предоставляете им logon-скрипт, а уже они пусть его назначают в политику — тоже невозможен по тем же причинам?

Отправлено: 15:37, 23-08-2018 | #9


Ветеран


Сообщения: 2595
Благодарности: 247

Профиль | Отправить PM | Цитировать


возможно, но столько бюрократии, что мне проще самому сделать и не трахать мозг ни себе ни им ради такой мелочи, нехай делают что-то более крупное и срочное, что наверняка у них есть.
я всё пытаюсь прогуглить параметры из ссылки,
Код: Выделить весь код
-ot reg -actn trustee -trst n1:voodoomsrlaptop\voodoomsr;ta:remtrst;w:dacl
object type reg, action trustee
а дальше предположения - ключ на полный доступ? или что это?
что значит n1:
далее, наверняка OU\account
но что за параметры дальше - не понимаю.
в самом setacl хелп микроскопический, в реге - тоже ничего такого..

Отправлено: 15:49, 23-08-2018 | #10



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - Удалить корявые ассоциации у всех юзеров

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Установка - как удалить ассоциации файла в Windows 8.1 yumrukuz Microsoft Windows 8 и 8.1 3 10-11-2016 23:58
Любой язык - [решено] удалить старые профили юзеров Опиум Скриптовые языки администрирования Windows 12 25-04-2016 16:02
2008 R2 - Удалить всех доменных юзеров из группы Администраторы с помощью GPO nikitos435 Windows Server 2008/2008 R2 13 16-05-2012 18:00
Помогите с импортом двиков реестра для всех юзеров romanvrsk Автоматическая установка Windows 2000/XP/2003 5 12-11-2010 12:32
корявые шрифты luser Microsoft Windows 95/98/Me (архив) 6 26-01-2003 20:04




 
Переход