using Inventor;
using System;
namespace RIChernov.Launcher
{
public class Launcher
{
public Application GetActiveApplicationOrLaunch()
{
Application app = GetActiveApplicationOrNull();
if (app == null)
{
try
{
app = Activator.CreateInstance(Type.GetTypeFromProgID
(_progID)) as Inventor.Application;
app.Visible = true;
}
catch
{
throw new Exception("Error: couldn't create Inventor instance");
}
}
return app;
}
public Application GetActiveApplicationOrNull()
{
Application app = null;
try
{
/*
чтобы тут работало нормально,
надо запускать инвентор от имени администратора
*/
app = System.Runtime.InteropServices.Marshal
.GetActiveObject(_progID) as Inventor.Application;
}
catch { }
return app;
}
private string _progID = "Inventor.Application";
}
}