Erstellen eines Configuration Manager benutzerdefinierten Aktionssteuerelements
Um Configuration Manager ein benutzerdefiniertes Aktionssteuerelement zu erstellen, erstellen Sie ein Windows-Steuerelement mithilfe der folgenden beiden Klassen:
Klasse | Beschreibung |
---|---|
SmsOsdEditorPageControl | Das benutzerdefinierte Aktionssteuerelement. Sie leiten von dieser Klasse ab, um das benutzerdefinierte Aktionssteuerelement zu implementieren, das im Tasksequenz-Editor angezeigt wird. |
TaskSequenceOptionControl | Das Optionssteuerelement für die benutzerdefinierte Aktion. Sie leiten von dieser Klasse ab, um die Seite mit den optionen für benutzerdefinierte Aktionen zu erstellen, die im Tasksequenz-Editor angezeigt wird. |
In diesen Verfahren wird gezeigt, wie Sie mithilfe von Visual Studio 2005 eine Configuration Manager Assembly für die Bereitstellungssteuerung des Betriebssystems erstellen. Wenn es in den Tasksequenz-Editor geladen wird, zeigt das Steuerelement eine Eigenschaftenseite an, die ein Textfeld enthält, das zum Festlegen einer Benutzernamen-Aktionsvariable für die benutzerdefinierte Aktion verwendet wird.
Nachdem Sie diese Schritte ausgeführt haben, führen Sie die Schritte in den folgenden Themen aus, um die MOF-Datei (Custom Action Managed Object Format) zu erstellen und das benutzerdefinierte Aktionssteuerelement zu verwenden.
Erstellen einer MOF-Datei für eine Configuration Manager benutzerdefinierte Aktion
Verwenden einer Configuration Manager benutzerdefinierten Aktion
Hinweis
Informationen zur Verwendung der benutzerdefinierten Aktion im Rahmen einer Bereitstellung finden Sie unter Informationen Configuration Manager Clientanwendungen für benutzerdefinierte Aktionen.
Das Visual Studio-Projekt "Steuerelement"
Mit dem folgenden Verfahren wird das Projekt für das benutzerdefinierte Aktionssteuerelement erstellt.
Erstellen des Steuerelements
Zeigen Sie in Visual Studio 2010 im Menü Datei auf Neu, und klicken Sie dann auf Projekt , um das Dialogfeld Neues Projekt zu öffnen.
Wählen Sie in der Liste mit Visual C#, Windows-Projekten die Projektvorlage Windows-Steuerelementbibliothek aus, und geben Sie
ConfigMgrTSAction
dann in das Feld Name ein.Klicken Sie auf OK , um das Visual Studio-Projekt zu erstellen.
Klicken Sie in Projektmappen-Explorer mit der rechten Maustaste auf UserControl1.cs, klicken Sie auf Umbenennen, und ändern Sie dann den Namen in
ConfigMgrTSActionControl.cs
.Klicken Sie Projektmappen-Explorer mit der rechten Maustaste auf Verweise, und klicken Sie dann auf Verweis hinzufügen.
Klicken Sie im Dialogfeld Verweis hinzufügen auf die Registerkarte Durchsuchen, navigieren Sie zu %ProgramFiles%\Microsoft Configuration Manager\AdminUI\bin, und wählen Sie dann die folgenden Assemblys aus:
Adminui.osdcommon.dll
Adminui.tasksequenceeditor.dll
Adminui.wqlqueryengine.dll
Microsoft.configurationmanagement.exe
Microsoft.configurationmanagement.managementprovider.dll
Klicken Sie auf OK , um die Assemblys als Projektverweise hinzuzufügen.
Klicken Sie Projektmappen-Explorer mit der rechten Maustaste auf ConfigMgrTSActionControl.cs, und klicken Sie dann auf Code anzeigen.
Fügen Sie den folgenden Code hinzu, um die erforderlichen Namespaces einzuschließen:
using Microsoft.ConfigurationManagement.AdminConsole; using Microsoft.ConfigurationManagement.AdminConsole.TaskSequenceEditor;
Ändern Sie die Klasse ConfigMgrTSActionControl so, dass sie von SmsOsdEditorPageControl abgeleitet wird.
Fügen Sie in ConfigMgrTSActionControl.cs der ConfigMgrTSActionControl-Klasse den folgenden neuen Konstruktor hinzu:
public ConfigMgrTSActionControl(SmsPageData data) : base(data) { InitializeComponent(); }
Fügen Sie die folgende Methode hinzu, um das Steuerelement zu initialisieren:
public override void InitializePageControl() { base.InitializePageControl(); }
Erstellen eines Optionssteuerelements
Im folgenden Verfahren wird der Code erstellt, der das Optionssteuerelement für die benutzerdefinierte Aktion deklariert. Diese Implementierung verwendet das Standardoptionssteuerelement.
So erstellen Sie ein Optionssteuerelement
Fügen Sie am Ende von ConfigMgrTSActionControl.cs die folgende neue Klasse im Namespace ConfigMgrTSAction hinzu:
public class ConfigureTSActionOptions : TaskSequenceOptionControl { public ConfigureTSActionOptions() : base() { } public ConfigureTSActionOptions(SmsPageData data) : base(data) { } }
Anpassen der Benutzeroberfläche
Im folgenden Verfahren werden ein Textfeld und Code zum Verwalten von Aktionsdaten hinzugefügt.
So fügen Sie die Benutzeroberfläche hinzu
Klicken Sie Projektmappen-Explorer mit der rechten Maustaste auf ConfigMgrTSActionControl.cs, und klicken Sie dann auf Designer anzeigen.
Klicken Sie in der Toolbox auf die Registerkarte Allgemeine Steuerelemente , und doppelklicken Sie dann auf Textfeld. Dem Steuerelement wird im Benutzersteuerungs-Designer eine Schaltfläche mit dem Namen
textBox1
hinzugefügt.Doppelklicken Sie auf das Textfeld. Der Klasse ConfigMgrTSActionControl wird ein Ereignishandler mit dem Namen
textBox1_TextChanged
hinzugefügt. Fügen Sie den folgenden Code hinzu, um sicherzustellen, dass Änderungen im Eigenschaften-Manager der Aktion gespeichert werden:SetDirtyFlag(true);
Fügen Sie in der Klasse ConfigMgrTSActionControl die folgende Methode hinzu, um den Textfeldwert in die eigenschaft zu schreiben, die
User
in der MOF der benutzerdefinierten Aktion definiert ist. Dies wird aufgerufen, wenn auf die Schaltfläche OK oder Übernehmen geklickt wird.protected override bool ApplyChanges(out Control errorControl, out bool showError) { // You can check the error here and return false. if (this.HasError(out errorControl) == true) { this.ShowMessageBox( this.GetErrorString(), "Error", MessageBoxButtons.OK, MessageBoxIcon.Warning); errorControl = null; showError = true; return false; } this.PropertyManager["User"].StringValue = textBox1.Text; return base.ApplyChanges(out errorControl, out showError); }
Doppelklicken Sie in der Entwurfsansicht für das Steuerelement auf das Steuerelement, um die Methode ConfigMgrTSActionControl_Load zu erstellen.
Fügen Sie der -Methode den folgenden Code hinzu. Dieser Code lädt das Textfeld mit einem vorhandenen User-Wert. Dies geschieht, wenn die Tasksequenzaktion nach der Erstellung bearbeitet wird.
textBox1.Text = this.PropertyManager["User"].StringValue;
Ressourcenzeichenfolgen
Im folgenden Verfahren werden die Ressourcenzeichenfolgen hinzugefügt, mit denen der Name der benutzerdefinierten Aktion im Tasksequenz-Editor angezeigt wird.
So fügen Sie Ressourcenzeichenfolgen hinzu
Klicken Sie Projektmappen-Explorer im Menü Projekt auf Eigenschaften.
Klicken Sie auf die Registerkarte Ressourcen . Wenn die Ressourcendatei nicht vorhanden ist, erstellen Sie sie, indem Sie die Meldung auswählen, die auf der Registerkarte Ressourcen angezeigt wird.
Zeigen Sie auf der Symbolleiste des Ressourcen-Designers auf die Dropdownliste Ressourcenansicht, klicken Sie auf den Pfeil, und stellen Sie sicher, dass sie auf Zeichenfolgen festgelegt ist (Standardeinstellung). Ein Einstellungsraster wird angezeigt, in dem die Zeichenfolgen angezeigt werden, die von dieser Instanz des Ressourcen-Designers verwaltet werden.
Klicken Sie auf die Spalte Name der letzten Zeile im Raster, die mit einem Sternchen (*) gekennzeichnet ist.
Geben Sie
DefaultDisplay_ConfigMgrTSAction
in der Spalte Name als Zeichenfolgennamen ein.Geben Sie in der Spalte Wert die Zeichenfolge Benutzerdefinierte Aktion ein. Dies ist die Zeichenfolge, die in der Liste der Tasksequenzaktionen angezeigt wird.
Klicken Sie auf die Spalte Name der letzten Zeile im Raster, die mit einem Sternchen (*) gekennzeichnet ist.
Geben Sie
ConfigMgrTSAction
in der Spalte Name als Zeichenfolgennamen ein.Geben Sie in der Spalte Wert ein
Custom Action
. Dies ist die Zeichenfolge, die angezeigt wird, wenn Sie die benutzerdefinierte Aktion hinzufügen.
Bereitstellen der Assembly
Mit dieser Prozedur wird die erstellte Assembly in den Ordner Configuration Manager Konsolenassemblys erstellt und kopiert. Wichtige Informationen zum Bereitstellen Configuration Manager Konsolenerweiterungen finden Sie unter Informationen Configuration Manager Bereitstellung der Administratorkonsolenerweiterung.
So stellen Sie die Assembly bereit
Erstellen Sie das Projekt. Visual Studio erstellt die Assembly als \Visual Studio 2005\Projects\ConfigMgrControl\ConfigMgrTSAction\bin\Debug\ConfigMgrTSActionControl.dll.
Kopieren Sie die Assembly in den Ordner %ProgramFiles%\Microsoft Configuration Manager\AdminUI\bin.
Siehe auch
Informationen zur Configuration Manager-Konsolenerweiterung
Bereitstellung der Configuration Manager-Konsolenerweiterung
Erstellen einer MOF-Datei für eine Configuration Manager benutzerdefinierte Aktion
Verwenden einer Configuration Manager benutzerdefinierten Aktion