Vault Customization

Reply
*Expert Elite* | International Moderator
MiWaNiZa
Posts: 129
Registered: ‎04-20-2012
Message 1 of 5 (679 Views)
Accepted Solution

SDK troubles - ExtensibilityTools.dll - LoadExplorerUtil

679 Views, 4 Replies
06-18-2012 12:42 AM

Morning!

 

I have a trouble with creating VaultExplorer instance in my program.

 

First of all, I'm trying to create MS Project ribbon add-in to assign Vault objects to tasks by Id's. This way I'll be able to synchronize properties in both directions.

 

I took a VaultFileBrowser example from SDK, and placed it in add-in code. This caused several troubles:

 

  1. VS 2010 asked to sign dll's with strong names. Solution: I signed them, using Signer utility, previously generated strong name key by sn tool. But I ran Signer not from VS console, but from cmd, placed necessary .NET v3.5 and .NET v2 tools (CorFlags.exe, ilasm.exe, ildasm.exe, TlbImp.exe) in same directory - to prevent using .NET v4 tools.
  2. Program didn't log in. There was no networking activity in Fiddler's logs. Solution: I used to enforce API Log In Hotfix. This updated whole Vault SDK and dll's to 16.1.58.0 version. So, I had to make step 1 again to get signed dll's.
  3. Add-in logged in, took Id and placed it in requested cell. But add-in still couldn't get Explorer Util - following code returns null, whole params, e.g.  ServerString, Vault, UserId and Ticket are not empty.

 

VaultExplorer = ExplorerLoader.LoadExplorerUtil(
                    loginInfo.ServerString, loginInfo.Vault,
                    ServiceManager.SecurityService.SecurityHeader.UserId,
                    ServiceManager.SecurityService.SecurityHeader.Ticket);

I even tryed to use previous version (16.0.56.200) of Autodesk.Connectivity.Explorer.ExtensibilityTools. That cauced an error of redefinition in DownloadFile ( File file, string localPath ) function: VS enforced to use DownloadFile ( File file, Folder folder ) redefinition.

 

Spoiler
I still can't understand what it for, and how to feed it current folder through Autodesk.Connectivity.WebServices.Folder class - that's one more my question. 

I'm connecting Vault Pro 2010 SP1. I need Explorer Util to open and preview Vault objects directly from Project.

 

Thanks in advance.

________________________________________________


Сообщество пользователей Autodesk
Блог

Читаем правила форума

________________________________________________

Employee
Redmond.D
Posts: 796
Registered: ‎12-12-2006
Message 2 of 5 (668 Views)

Re: SDK troubles - ExtensibilityTools.dll - LoadExplorerUtil

06-18-2012 06:11 AM in reply to: MiWaNiZa

You mention that you are using Vault Pro 2010 SP1.  Do you mean Vault Pro 2012?   Autodesk.Connectivity.Explorer.ExtensibilityTools.dll doesn't exist for Vault 2010.

 

A null IExplorerUtil value sounds strange.  Usually you get an Exception when something goes wrong.

 

There are various 32 and 64 bit issues you may run into with ExtensibilityTools.  Is your OS 64 bit?  Is MS Project running as 64 bit?  Is your VS project set to compile to 32 or 64 bit? 

For some more information see:  http://justonesandzeros.typepad.com/blog/2010/09/64-bit-support.html

Some things to try:

  • Set your VS project to be explicitly 32 or 64 bit.
  • Use the overloaded version of LoadExplorerUtil which lets you explicilty say which folder is used to load the Vault Explorer DLLs.

 

 



Doug Redmond
Software Engineer
Autodesk, Inc.
http://justonesandzeros.typepad.com/

*Expert Elite* | International Moderator
MiWaNiZa
Posts: 129
Registered: ‎04-20-2012
Message 3 of 5 (658 Views)

Re: SDK troubles - ExtensibilityTools.dll - LoadExplorerUtil

06-19-2012 12:44 AM in reply to: Redmond.D

Right, I'm using Vault Pro 2012.


I have x64 OS, x32 MS Project and VS project set to compile at "Any CPU"? 

Using the overloaded version of LoadExplorerUtil, loading the Vault Explorer DLLs helped.

 

Meanwhile a "SOAP exception 106" appeared. I tried to apply your "UserIdTicketCredentials and WebServiceCredentials bugfix", but how to:

  • login by Windows authentication
  • get UserID by username, have no app logged in?

 



________________________________________________


Сообщество пользователей Autodesk
Блог

Читаем правила форума

________________________________________________

Employee
Redmond.D
Posts: 796
Registered: ‎12-12-2006
Message 4 of 5 (653 Views)

Re: SDK troubles - ExtensibilityTools.dll - LoadExplorerUtil

06-19-2012 04:41 AM in reply to: MiWaNiZa

Here is what you need to do to fix error 106:

  1. Log into Vault by creating a new WebServiceManager with the UserPasswordCredentials.  If you want Windows authentication, use WinAuthCredentials.
  2. From your WebServiceManager go to SecurityService.SecurityHeaderValue to get the user ID and ticket information.
  3. Now you have all the information you need to call LoadExplorerUtil.

 



Doug Redmond
Software Engineer
Autodesk, Inc.
http://justonesandzeros.typepad.com/

*Expert Elite* | International Moderator
MiWaNiZa
Posts: 129
Registered: ‎04-20-2012
Message 5 of 5 (649 Views)

Re: SDK troubles - ExtensibilityTools.dll - LoadExplorerUtil

06-19-2012 06:03 AM in reply to: Redmond.D

My current code implements described by you algorithm exactly.

 

The fault was in my negligence. MS Project ribbon button directly after MainForn.Show() called serviceManager.Dispose().

 

Luck you! 

________________________________________________


Сообщество пользователей Autodesk
Блог

Читаем правила форума

________________________________________________

You are not logged in.

Log into access your profile, ask and answer questions, share ideas and more. Haven't signed up yet? Register

Announcements
Are you familiar with the Autodesk Expert Elites? The Expert Elite program is made up of customers that help other customers by sharing knowledge and exemplifying an engaging style of collaboration. To learn more, please visit our Expert Elite website.

Need installation help?

Start with some of our most frequented solutions to get help installing your software.

Ask the Community