public static void GetNC(ref nanoCAD.Application NC) { try { NC = (nanoCAD.Application)Application.AcadApplication; } catch { } }
public static void GetNC(ref nanoCAD.Application NC) { var p = Application.ExecutablePath; System.Diagnostics.ProcessStartInfo startInfo = new System.Diagnostics.ProcessStartInfo(); startInfo.CreateNoWindow = false; startInfo.UseShellExecute = false; startInfo.FileName = p; startInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Hidden; startInfo.Arguments = "/register"; System.Diagnostics.Process exeProcess = System.Diagnostics.Process.Start(startInfo); //If you need synchronous execution you can do this exeProcess.WaitForExit(); try { Type t1 = Type.GetTypeFromProgID("nanoCAD.Application"); NC = (nanoCAD.Application)Activator.CreateInstance(t1); } catch {} }