Лёгкое программирование под Autodesk Vault. Часть 4
Задача
Программно поднять соединение с Autodesk Vault
Решение
Создать WebServiceManager из Autodesk.Connectivity.WebServices.dll, передав ему полученные полномочия.
- # Подсоединяем библиотеку
 - Add-Type -Path "C:\Program Files (x86)\Autodesk\Autodesk Vault 2014 SDK\bin\Autodesk.Connectivity.WebServices.dll"
 - #получаем полномочия в режиме "только чтение"
 - $cred = New-Object Autodesk.Connectivity.WebServicesTools.UserPasswordCredentials ("localhost", "Vault", "Administrator", "", $true)
 - #Создаём диспетчера
 - $webSvc = New-Object Autodesk.Connectivity.WebServicesTools.WebServiceManager ($cred)
 
WebServiceManager – это ваши ворота в сад Vaulty API. И IWebServiceCredentials содержит ключ к этим воротам. Вы можете создать этот ключ шестнадцатью различными способами. (A-P) путём получения IWebServiceCredentials.
После подключения вам будет доступна следующая информация о соединении:
| 
 ReadOnly  | 
 Запущено ли соединение в режиме «только чтение»  | 
| 
 RequiresSignIn  | 
 Необходима ли авторизация для использования службы. Gets the value telling if a sign in is required before a service can be used.  | 
| 
 RequiresSignOut  | 
 Необходимо ли разрывать соединение, когда служба выходит из области видимости.  | 
| 
 SecurityHeader  | 
 Заголовок безопасности.  | 
| 
 ServerIdentities  | 
 Идентификация сервера.  | 
| 
 SupportsSignIn  | 
 Могут ли полномочия устанавливать соединение.  | 
| 
 SupportsSignOut  | 
 Могут ли полномочия разрывать соединение.  | 
| 
 UserName  | 
 Имя пользователя.  | 
| 
 VaultName  | 
 Имя хранилища.  | 
Однако, наиболее правильным будет устанавливать подключение при помощи VDF.
- # Подсоединяем библиотеку
 - Add-Type -Path "c:\Program Files (x86)\Autodesk\Autodesk Vault 2014 SDK\bin\Autodesk.DataManagement.Client.Framework.Vault.Forms.dll"
 - #Call login dialog and workflow, get credentials on successfull login
 - $g_login=[Autodesk.DataManagement.Client.Framework.Vault.Forms.Library]::Login($null)
 
В результате вы получите диалог входа с информацией, которую ввели в последний раз.
Автор перевода: Дмитрий Емельянов
Обсуждение: http://adn-cis.org/forum/index.php?topic=659
Опубликовано 09.04.2014Отредактировано 06.08.2014 в 15:06:51