@dgorsman: Checking the profile name is a bad thing
It's very easy to rename one, but also through the versions of Civil3D the preinstalled profile names are or might be different.
I've checked the loaded assemblies in Civil3D as AutoCAD and Civil3D Metric and this is the list of loaded assemblies in Civil3D:
"mscorlib.dll"
"AcdbMgd.dll"
"mscorlib.dll"
"System.dll"
"msvcm90.dll"
"System.Xml.dll"
"System.Drawing.dll"
"PresentationFramework.dll"
"WindowsBase.dll"
"PresentationCore.dll"
"AdApplicationFrame.dll"
"AdWindows.dll"
"PresentationFramework.Aero.dll"
"acmgd.dll"
"System.Core.dll"
"System.Configuration.dll"
"AcWindows.dll"
"AcWindows.resources.dll"
"AcCui.dll"
"aecmgdreverse.dll"
"AecRibbon.dll"
"AcMapResourceManagement.dll"
"AmbercoreEngine.dll"
"AmberCore.IsdCodecAPI.Core.dll"
"Redland.NET.dll"
"AcMapSurveyMan.dll"
"Autodesk.Gis.Map.SurveyUI.dll"
"System.Windows.Forms.dll"
"Autodesk.Gis.Map.Survey.dll"
"Autodesk.Map.Platform.Core.dll"
"OSGeo.MapGuide.PlatformBase.dll"
"OSGeo.MapGuide.Foundation.dll"
"OSGeo.MapGuide.Geometry.dll"
"Autodesk.Gis.Map.Survey.Resource.dll"
"AcMapRibbonWrapper.dll"
"Autodesk.Gis.Map.Shared.dll"
"AeccMgdReverse.dll"
"AeccUiWindows.dll"
"AeccUiWindows.resources.dll"
"Microsoft.VisualBasic.dll"
"flAcadLib2011_x64.dll"
"flNlcsLib.dll"
"System.Web.dll"
"Autodesk.AutoCAD.Interop.dll"
"ManagedMC3.dll"
"AcLayer.dll"
"AcLayer.resources.dll"
"Accessibility.dll"
Only in Civil3D are these extra:
"aecmgdreverse.dll"
"AecRibbon.dll"
"AmbercoreEngine.dll"
"AmberCore.IsdCodecAPI.Core.dll"
"AeccMgdReverse.dll"
"AeccUiWindows.dll"
"AeccUiWindows.resources.dll"
It also might differ if the Toolspace is loaded or not and if people have messed around with the civil3d.cui as Enterprise menu.
I assume the best way to check if Civil3D is loaded to check if the command TOOLSPACE is available. In Civil3D as AutoCAD it is not available.