/// <summary> /// Sets properties visible in add/remove programs section of control panel. /// </summary> /// <param name="project"></param> /// <param name="controlPanelInfo"></param> /// <returns></returns> public static TProject SetControlPanelInfo <TProject>(this TProject project, ProjectControlPanelInfo controlPanelInfo) where TProject : Project { if (project is null) { throw new ArgumentNullException(nameof(project)); } if (controlPanelInfo is null) { throw new ArgumentNullException(nameof(controlPanelInfo)); } controlPanelInfo.BindTo(project); return(project); }
/// <summary> /// Sets properties visible in add/remove programs section of control panel. /// </summary> /// <param name="project"></param> /// <param name="name">Name of the product</param> /// <param name="manufacturer">Product manufacturer</param> /// <param name="readme"></param> /// <param name="comment"></param> /// <param name="contact"></param> /// <param name="helpUrl"></param> /// <param name="aboutUrl"></param> /// <param name="productIconFilePath">Icon file</param> /// <param name="helpTelephone"></param> /// <returns></returns> public static TProject SetControlPanelInfo <TProject>(this TProject project, string name, string?manufacturer, string?readme, string?comment, string?contact, Uri?helpUrl, Uri?aboutUrl, FileInfo?productIconFilePath, string?helpTelephone = null) where TProject : Project { if (project is null) { throw new ArgumentNullException(nameof(project)); } var controlPanelInfo = new ProjectControlPanelInfo( name, manufacturer, readme, comment, contact, helpUrl, aboutUrl, productIconFilePath, helpTelephone); return(project.SetControlPanelInfo(controlPanelInfo)); }