Free Trial

Safari Books Online is a digital library providing on-demand subscription access to thousands of learning resources.


Share this Page URL
Help

47 Entwicklung eigener Commandlets mit C... > 47.8 Verkettung von Commandlets - Pg. 653

Verkettung von Commandlets { } protected override void ProcessRecord() { string ABFRAGE = "Select * from Win32_LogicalDisk"; System.Management.ManagementObjectCollection DiskMenge; ManagementScope ms = new ManagementScope("\\\\" + Computer + "\\root\\cimv2"); ObjectQuery oq = new ObjectQuery(ABFRAGE); System.Management.ManagementObjectSearcher suche = new System.Management.ManagementObjectSearcher(ms, oq); DiskMenge = suche.Get(); // Objekte einzeln zurückgeben this.WriteObject(DiskMenge, true); // Alternative //foreach (ManagementObject Disk in DiskMenge) //{ // this.WriteObject(Disk); //} } protected override void StopProcessing() { } } } Alternativ zur Angabe ValueFromPipeline = true kann man durch ValueFromPipelineByPropertyName = true festlegen, dass nicht ein ganzes Objekt aus der Eingabepipeline auf ein Attribut der Com- mandlet-Klasse abgebildet wird, sondern nur ein einzelnes gleich- namiges Attribut des Eingabeobjekts. 47.8 Verkettung von Commandlets Ihre ganze Macht können Commandlets im Zusammenspiel mit ande- Drei Kopplungs- arten ren Commandlets entfalten. Es gibt drei Kopplungsformen: Kopplung auf Basis elementarer Datentypen (insbesondere String) Kopplung auf Basis von typisierten Objekten Generische Kopplung 653