Итак, у меня есть плохо разработанное приложение (сюрприз!), Которое нужно поддерживать. Он открывает диалоговое окно «Обзор папки», в котором все хорошо, за исключением того, что пользователю нужно выбрать общий ресурс на другом сервере. Я подумал, что просто сопоставлю им диск, но им нужен доступ к любому из 60 общих ресурсов на сервере.
Мне нужен способ сопоставить \ server \ с папкой, чтобы они могли видеть все доступные общие ресурсы, но окна позволят вам сопоставить только \ server \ share, что противоречит цели.
Мне просто нужно, чтобы мои пользователи могли видеть все доступные общие ресурсы на сервере из диалогового окна «Обзор папки».
Есть идеи о том, как это можно сделать?
Вам необходимо отобразить общий ресурс IPC $ (межпроцессное взаимодействие). Просто запустите следующее из командной строки или сценария.
net use \\<server> /user:<domain\username> *
Это создаст кэшированный токен безопасности для этого пользователя для этого сервера, так что любые доступные общие ресурсы будут использовать этот кешированный токен по умолчанию и не будут запрашивать у пользователя.
Маркер остается в кэше до тех пор, пока вы не выйдете из системы, поэтому это хорошо работает в сценарии входа. Звездочка (*) указывает команде net запрашивать у пользователя пароль, или вы можете заменить звездочку паролем пользователя для сценариев. Кроме того, НЕ ВКЛЮЧАЙТЕ косую черту после имени сервера (\\server ...or \\server\IPC$ ...not \\server\
), потому что это указывает на общий ресурс, а не на IPC.
Вы можете предоставить общий доступ к корневому тому (хотя это, вероятно, не рекомендуется, если это не том, который содержит только общие папки. Если это том ОС, то это определенно не рекомендуется). В Windows каждый фиксированный том диска используется совместно для административных целей и скрыт (с помощью знака $ в имени общего ресурса). Вы можете снова предоставить общий доступ к каждому тому, назначив имя общего ресурса по вашему выбору.
Таким образом, вы можете предоставить общий доступ к корневому тому, а затем назначить ему букву диска. Когда пользователи подключаются к подключенному диску, они видят все папки на этом томе.
Например:
Сервер = fileserver
Имя общего тома = Root
Подключенный диск = Q = \\fileserver\root
Просмотр Q = каждая папка в корневом томе fileserver
Вы можете создать символическую ссылку на общий ресурс, а затем предоставить им доступ к символическим ссылкам. Создайте командный файл, который можно запустить на компьютерах пользователей, которые его настраивают.
mkdir c:\servershares
cd c:\servershares
mklink /D share1 \\server\share1
mklink /D share2 \\server\share2
mklink /D share3 \\server\share3
Вы также можете создать общий ресурс DFS, содержащий все общие ресурсы на этом сервере.