int IVsProjectFlavorCfgProvider.CreateProjectFlavorCfg(IVsCfg pBaseProjectCfg, out IVsProjectFlavorCfg ppFlavorCfg) { ppFlavorCfg = null; if (m_projectConfiguration == null) { object projectExtObj = null; var hr = _innerVsHierarchy?.GetProperty((uint)VSConstants.VSITEMID.Root, (int)__VSHPROPID.VSHPROPID_ExtObject, out projectExtObj); var buildPropertyStorage = _innerVsHierarchy as IVsBuildPropertyStorage; EnvDTE.Project dteProject = projectExtObj as EnvDTE.Project; if (dteProject != null) { m_projectName = dteProject.FullName; } if (m_innerVsProjectFlavorCfgProvider != null) { m_innerVsProjectFlavorCfgProvider.CreateProjectFlavorCfg(pBaseProjectCfg, out ppFlavorCfg); } m_projectConfiguration = new BuildProjectConfiguration(pBaseProjectCfg, ppFlavorCfg, m_buildManager, m_traceDominoMessage, buildPropertyStorage, m_projectName); } ppFlavorCfg = m_projectConfiguration; return(VSConstants.S_OK); }
public BuildableProjectCfg( IVsBuildableProjectCfg innerBuildableCfg, BuildManager buildManager, BuildProjectConfiguration buildProjectConfiguration) { m_innerCfg = innerBuildableCfg; m_innerCfg2 = innerBuildableCfg as IVsBuildableProjectCfg2; m_buildManager = buildManager; m_buildProjectConfiguration = buildProjectConfiguration; }