. Я работаю над автоматизацией установки OneDrive для новых компьютеров, и я новичок в таких вещах.
Мне нужно автоматизировать настройку общей библиотеки Sharepoint на пользовательском компьютере. Таким образом, у пользователя есть вся общая библиотека в проводнике Windows. Этот Sharepoint предоставляется с нашей учетной записью Office365.
Я прочитал документацию Microsoft и создал URL-адрес с необходимыми данными, как описано в части «Автоматическая -настройка синхронизации сайта SharePoint».
Но в моем скрипте powershell есть проблема, которую я не понимаю.
Когда я запускаю команду powershell Start-Process "odopen://sync/?siteId[...]"
, открывается окно OneDrive, и мне нужно настроить учетную запись. Но в конце процесса с OneDrive синхронизируется только личный (рабочий )OneDrive пользователя, а не общая библиотека.
Папка, созданная OneDrive, — :C :\Users%username\OneDrive-
И я хочу иметь папку :C :\Users%username<имя арендатора>
Похоже, что OneDrive не заботятся обо всех параметрах, переданных в URL-адресе.
К вашему сведению, я запускаю этот скрипт на новой виртуальной машине Windows 10.
Спасибо за помощь
Итак, мы должны закодировать параметры URL, как показано ниже:
Add-Type -AssemblyName System.Web
$WebURL = [System.Web.HttpUtility]::UrlEncode("https://plop.sharepoint.com")
$SiteID = [System.Web.HttpUtility]::UrlEncode("{xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx")
$WebID = [System.Web.HttpUtility]::UrlEncode("{xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx}")
$ListID = [System.Web.HttpUtility]::UrlEncode("{xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx}")
$WebTitle = [System.Web.HttpUtility]::UrlEncode("PLOP")
$ListTitle = [System.Web.HttpUtility]::UrlEncode("Folder")
$UserName = [System.Web.HttpUtility]::UrlEncode("me@exemple.com")
Write-Output "Configure OneDrive"
$odopen = "odopen://sync/?onPrem=0&webTemplate=68&libraryType=4&siteId=" + $SiteID + "&webId=" + $WebID + "&webUrl=" + $webURL + "&listId=" + $ListID + "&userEmail=" + $UserName + "&webTitle=" + $WebTitle + "&listTitle=" + $ListTitle
Start-Process $odopen
Вот и все...