Autodesk Community Tipsではちょっとしたコツ、やり方、ショートカット、アドバイスやヒントを共有しています。
InventorのアドインでVault接続状態を確認し、接続していない場合はログインをしてVaultのConnectionを取得したい。
Vault APIのConnectionManager.Instance.Connectionにより接続中のVaultコネクションオブジェクトを取得することができます。
接続されていない場合は、InventorのVaultログインコマンド(内部名:ContentLoginCmdIntName)を実行することで、ログインダイアログを表示することが可能です。
以下は、上述のAPIを使用したサンプルコードとなります。
using VDF = Autodesk.DataManagement.Client.Framework;
using VB = Connectivity.Application.VaultBase;
VDF.Vault.Currency.Connections.Connection conn = VB.ConnectionManager.Instance.Connection;
if (null == conn)
{
try
{
ControlDefinition oCtlDef =
m_inventorApplication.CommandManager.ControlDefinitions["ContentLoginCmdIntName"];
oCtlDef.Enabled = true;
oCtlDef.Execute();
conn = VB.ConnectionManager.Instance.Connection;
}
catch (Exception ex)
{
}
}
if (null != conn)
{
MessageBox.Show(String.Format("Vault = {0}, UserID = {1}, User Name = {2}",conn.Vault, conn.UserID, conn.UserName));
}
なお、Visual Stuidoプロジェクトの参照設定で、Vault SDK配下のAutodesk.DataManagement.Client.Framework.dllおよびVaultインストールフォルダ配下のConnectivity.Application.VaultBase.dllファイルの参照の追加が必要となる点にご留意ください。