2015-10-19 2 views
-1

Это не вопросы программирования, но я пытаюсь настроить структуру папок в меню «Пуск», в Windows 7. В этой структуре папок есть несколько папок, в которых есть ярлыки внутри этих указателей к приложениям на компьютере.Заблокировать папки меню «Пуск»

Я не хочу, чтобы пользователь на компьютере мог полностью взаимодействовать с этой структурой папок. Сейчас они могут перемещать, копировать или удалять их из меню «Пуск».

Я нашел изменения реестра, которые блокируют все меню «Пуск», но я хочу управлять только определенной папкой.

Спасибо!

+0

Похоже, вы пишете в меню «Пуск» пользователя, а не в меню «Пуск» компьютера. –

ответ

0

Если ваши пользователи не являются администраторами этой машины, вы можете просто создать папку под C:\ProgramData\Microsoft\Windows\Start Menu вместо %appdata%\Microsoft\Windows\Start Menu. Тогда только администраторы могут его редактировать.

Если это среда, в которой многие пользователи получили права администратора, все становится хитроумным. У вас есть tomodify ntfs security settings и используйте правильный тип структуры или используйте символическую ссылку.

Проблема связана с параллельными папками, где один можно редактировать, а другой нет. Это связано с тем, что права как delete наследуются от родителя. Поэтому, чтобы заставить его работать с правами только ntfs, вам необходимо удалить все права от родителя (включая наследование), а затем вернуть все папки, но неуязвимые, их права на более глубокий уровень. Это проблематично, если есть много папок параллельно с вашим собственным, потому что это большая работа.

Итак, единственный трюк, который я нашел, это создать папку в другом месте, а затем связать ее. Вы должны создать папку C: \ MyIndestructibleFolders \ MyFolder, а затем удалить все разрешения для MyFolder.

Имейте в виду, что если вы создадите папку, она может наследовать множество прав от своих родителей, перезаписывающих вещи, которые вы установили. Лучший способ избежать этого - перейти в «Расширенное» меню безопасности и снять флажок с надписью «Включить наследуемые разрешения от родителя этого объекта». Если он просит заменить или удалить, скажем, удалить. Затем создайте одну запись для своего администратора с «Полный доступ» и одну для «Пользователи домена» или «Пользователи» с настройками чтения по умолчанию. Я также установил его «readonly» в gui, но это затрагивает только детей, поэтому может и не понадобиться.

Теперь вы создаете символическую ссылку, чтобы эта папка отображалась в меню «Пуск». Откройте cmd и введите

mklink /D "C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Folder" C:\MyIndestructibleFolders\MyFolder 

Теперь перейдите на узел в проводнике и удалите все разрешения. Просто добавьте полный доступ для администратора на этот раз, не нужно никаких прав пользователя. Теперь он должен быть виден в меню «Пуск», но может быть отменен/-moveable

Если вам нужно сделать это на нескольких компьютерах программно, это может быть хорошей идеей для изучения icacls.

Следует отметить, что пользователи могут по-прежнему перетаскивать элементы в эту папку в меню «Пуск». Это неправда. Что произойдет, если вы сделаете это, так как вторая папка с тем же именем создается в папке AppData пользователей, файл перемещается туда, и содержимое обеих папок отображается одновременно.

Это технически лучший способ сделать это, но это довольно сложно. Существует еще один более хакерский способ, который вы также можете рассмотреть. Файлы, которые находятся в записи, не могут быть перемещены или удалены.Вы можете создать файл «~ Anchor» и сделать его невидимым внутри корня вашей папки. Затем вы можете использовать PowerShell для его

блокировки записи
$file = [System.io.File]::Open('C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Myfolder\~Anchor', 'Open', 'Read', 'None') 

из имени с ~ это будет первое, что окна пытается переместить/удалить так что это будет препятствовать работе. Если вы поместите свой сценарий powershell в папку «Автозагрузка» или создадите задачу, которую вы выполняете при загрузке с правами системы, она также должна предотвратить удаление.

+0

Я пробовал редактировать параметры безопасности ntfs и, похоже, не помогает, пользователь все еще может перетащить папку из меню «Пуск» и удалить элементы внутри нее. – dstew

+0

Я только что попробовал, и это сработало. Может быть, у вас есть наследование от родительских папок? – Syberdoor

+0

Ahh попробует это сегодня! Благодаря! – dstew

Смежные вопросы