//=======================================================================================; // // This source code is only intended as a supplement to existing Microsoft documentation. // // THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY // KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE // IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR // PURPOSE. // // Copyright (C) Microsoft Corporation. All Rights Reserved. // //=======================================================================================; // // Purpose: // Shows how to add to the help system by pointing at a .chm file. // //=======================================================================================; // // Description: // Uses the SnapInHelp attribute to cause an external .chm help file to be added to // MMC's help system. Also fills the HelpTopic property on the root node to jump // right to a specific help page url (in this case the ScopeNode definition help page). // // SPECIAL NOTE: You should create your Help file with the Binary TOC option set to Yes // otherwise your help file Table of Contents will not show up in MMC. // //=======================================================================================; using System; using System.ComponentModel; using System.Security.Permissions; using Microsoft.ManagementConsole; [assembly: PermissionSetAttribute(SecurityAction.RequestMinimum, Unrestricted = true)] namespace Microsoft.ManagementConsole.Samples { /// /// RunInstaller attribute - Allows the .Net framework InstallUtil.exe to install the assembly. /// SnapInInstaller class - Installs snap-in for MMC. /// [RunInstaller(true)] public class InstallUtilSupport : SnapInInstaller { } /// /// SnapInSettings attribute - Used to set the registration information for the snap-in. /// SnapInHelpTopic - Adds the referenced help file to MMC's help system. /// SnapInLinkedHelpTopic - Adds any Additional help file to MMC's help system. /// SnapIn class - Provides the main entry point for the creation of a snap-in. /// HelpSnapIn - Provides a specific help topic for its rootnode /// [SnapInSettings("{395A15EB-9A9A-4471-86A3-09778C57B3FD}", DisplayName = "- Help Sample", Description = "Show Help Sample SnapIn")] [SnapInHelpTopicAttribute(@"HelpSampleReference.chm", ApplicationBaseRelative = true)] [SnapInLinkedHelpTopicAttribute(@"HelpSampleReference.chm", ApplicationBaseRelative = true)] public class HelpSnapIn : SnapIn { /// /// Constructot /// public HelpSnapIn() { // update scope pane with a node in the tree this.RootNode = new ScopeNode(); this.RootNode.DisplayName = "Help Sample - (Help action shows ScopeNode Help)"; // refer to the 'URL' of the help page you want. // (TIP: Right-click in the right-hand pane for a given help topic to find it's URL.) this.RootNode.HelpTopic = @"HelpSampleReference.chm::/Topic2.htm"; } } // class } // namespace