/// <summary> /// Returns a SolidEdgeFramework.Environment by category id.. /// </summary> public static SolidEdgeFramework.Environment LookupByCategoryId(this SolidEdgeFramework.Environments environments, Guid categoryId) { for (int i = 1; i <= environments.Count; i++) { var environment = environments.Item(i); if (environment.GetCategoryId().Equals(categoryId)) { return(environment); } } return(null); }
/// <summary> /// Returns a SolidEdgeFramework.Environment by name. /// </summary> public static SolidEdgeFramework.Environment LookupByName(this SolidEdgeFramework.Environments environments, string name) { for (int i = 1; i <= environments.Count; i++) { var environment = environments.Item(i); if (environment.Name.Equals(name)) { return(environment); } } return(null); }
static void Main(string[] args) { SolidEdgeFramework.Application application = null; SolidEdgeFramework.Environments environments = null; try { // Register with OLE to handle concurrency issues on the current thread. SolidEdgeCommunity.OleMessageFilter.Register(); // Connect to or start Solid Edge. application = SolidEdgeCommunity.SolidEdgeUtils.Connect(true, true); // Get a reference to the Environments collection. environments = application.Environments; // Loop through each addin. foreach (var environment in environments.OfType <SolidEdgeFramework.Environment>()) { Console.WriteLine("Caption: {0}", environment.Caption); Console.WriteLine("CATID: {0}", environment.CATID); Console.WriteLine("Index: {0}", environment.Index); Console.WriteLine("Name: {0}", environment.Name); Console.WriteLine("SubTypeName: {0}", environment.SubTypeName); Console.WriteLine(); } } catch (System.Exception ex) { Console.WriteLine(ex.Message); } finally { SolidEdgeCommunity.OleMessageFilter.Unregister(); } Console.Read(); }
/// <summary> /// Returns the environment that belongs to the current active window of the document. /// </summary> public static SolidEdgeFramework.Environment GetActiveEnvironment(this SolidEdgeFramework.Application application) { SolidEdgeFramework.Environments environments = application.Environments; return(environments.Item(application.ActiveEnvironment)); }