ManagementClass.GetStronglyTypedClassCode Methode

Definition

Generiert eine stark typierte Klasse für eine bestimmte WMI-Klasse.

Überlädt

Name Beschreibung
GetStronglyTypedClassCode(Boolean, Boolean)

Generiert eine stark typierte Klasse für eine bestimmte WMI-Klasse.

GetStronglyTypedClassCode(CodeLanguage, String, String)

Generiert eine stark typierte Klasse für eine bestimmte WMI-Klasse. Diese Funktion generiert Code für Visual Basic, C#, JScript, J# oder C++ abhängig von den Eingabeparametern.

Hinweise

.NET Framework-Sicherheit

Volle Vertrauenswürdigstellung für den unmittelbaren Anrufer. Dieses Element kann nicht von teilweise vertrauenswürdigem Code verwendet werden. Weitere Informationen finden Sie unter Verwenden von Bibliotheken aus teilweise vertrauenswürdigen Code.

GetStronglyTypedClassCode(Boolean, Boolean)

Quelle:
ManagementClass.cs
Quelle:
ManagementClass.cs
Quelle:
ManagementClass.cs
Quelle:
ManagementClass.cs

Generiert eine stark typierte Klasse für eine bestimmte WMI-Klasse.

public:
 System::CodeDom::CodeTypeDeclaration ^ GetStronglyTypedClassCode(bool includeSystemClassInClassDef, bool systemPropertyClass);
public System.CodeDom.CodeTypeDeclaration GetStronglyTypedClassCode(bool includeSystemClassInClassDef, bool systemPropertyClass);
member this.GetStronglyTypedClassCode : bool * bool -> System.CodeDom.CodeTypeDeclaration
Public Function GetStronglyTypedClassCode (includeSystemClassInClassDef As Boolean, systemPropertyClass As Boolean) As CodeTypeDeclaration

Parameter

includeSystemClassInClassDef
Boolean

truedie Klasse zum Verwalten von Systemeigenschaften einzuschließen; andernfalls . false

systemPropertyClass
Boolean

truedie generierten Klassen verwalten Systemeigenschaften; andernfalls . false

Gibt zurück

A CodeTypeDeclaration representing the declaration for the strongly typed class.

Beispiele

Im folgenden Beispiel wird eine stark typierte Klasse für die Win32_LogicalDisk-Klasse generiert. Der generierte Code wird in C# oder Visual Basic .NET erstellt.

using System;
using System.Management;
using System.CodeDom;
using System.IO;
using System.CodeDom.Compiler;
using Microsoft.CSharp;

namespace ManagementSample
{
    class GenerateCSharpCode
    {
        static void Main(string[] args)
        {

            string strFilePath = "C:\\temp\\LogicalDisk.cs";
            CodeTypeDeclaration ClsDom;

            ManagementClass cls1 =
                new ManagementClass(null,"Win32_LogicalDisk",null);
            ClsDom = cls1.GetStronglyTypedClassCode(false,false);

            ICodeGenerator cg =
                (new CSharpCodeProvider()).CreateGenerator ();
            CodeNamespace cn = new CodeNamespace("TestNamespace");

            // Add any imports to the code
            cn.Imports.Add(
                new CodeNamespaceImport("System"));
            cn.Imports.Add(
                new CodeNamespaceImport("System.ComponentModel"));
            cn.Imports.Add(
                new CodeNamespaceImport("System.Management"));
            cn.Imports.Add(
                new CodeNamespaceImport("System.Collections"));

            // Add class to the namespace
            cn.Types.Add (ClsDom);

            // Now create the filestream (output file)
            TextWriter tw = new StreamWriter(new
                FileStream (strFilePath,FileMode.Create));

            // And write it to the file
            cg.GenerateCodeFromNamespace(
                cn, tw, new CodeGeneratorOptions());

            tw.Close();
        }
    }
}
Imports System.Management
Imports System.CodeDom
Imports System.IO
Imports System.CodeDom.Compiler
Imports System.Security.Permissions

Namespace Sample

    <EnvironmentPermissionAttribute(SecurityAction.LinkDemand)> _
    Public Class GenerateVBCode

        <EnvironmentPermissionAttribute(SecurityAction.LinkDemand)> _
                Public Overloads Shared Function _
                    Main(ByVal args() As String) As Integer

            Dim strFilePath As String
            strFilePath = "C:\temp\LogicalDisk.vb"
            Dim ClsDom As CodeTypeDeclaration

            Dim cls1 As ManagementClass
            cls1 = New ManagementClass( _
                Nothing, "Win32_LogicalDisk", Nothing)
            ClsDom = cls1.GetStronglyTypedClassCode(False, False)


            Dim cg As ICodeGenerator
            cg = (New VBCodeProvider).CreateGenerator()
            Dim cn As CodeNamespace
            cn = New CodeNamespace("TestNamespace")

            ' Add any imports to the code
            cn.Imports.Add( _
                New CodeNamespaceImport("System"))
            cn.Imports.Add( _
                New CodeNamespaceImport("System.ComponentModel"))
            cn.Imports.Add( _
                New CodeNamespaceImport("System.Management"))
            cn.Imports.Add( _
                New CodeNamespaceImport("System.Collections"))

            ' Add class to the namespace
            cn.Types.Add(ClsDom)

            ' Now create the filestream (output file)
            Dim tw As TextWriter
            tw = New StreamWriter(New _
                FileStream(strFilePath, FileMode.Create))

            Dim options As New CodeGeneratorOptions
            ' And write it to the file
            cg.GenerateCodeFromNamespace( _
            cn, tw, options)

            tw.Close()

        End Function
    End Class
End Namespace

Hinweise

.NET Framework-Sicherheit

Volle Vertrauenswürdigstellung für den unmittelbaren Anrufer. Dieses Element kann nicht von teilweise vertrauenswürdigem Code verwendet werden. Weitere Informationen finden Sie unter Verwenden von Bibliotheken aus teilweise vertrauenswürdigen Code.

Gilt für:

GetStronglyTypedClassCode(CodeLanguage, String, String)

Quelle:
ManagementClass.cs
Quelle:
ManagementClass.cs
Quelle:
ManagementClass.cs
Quelle:
ManagementClass.cs

Generiert eine stark typierte Klasse für eine bestimmte WMI-Klasse. Diese Funktion generiert Code für Visual Basic, C#, JScript, J# oder C++ abhängig von den Eingabeparametern.

public:
 bool GetStronglyTypedClassCode(System::Management::CodeLanguage lang, System::String ^ filePath, System::String ^ classNamespace);
public bool GetStronglyTypedClassCode(System.Management.CodeLanguage lang, string filePath, string classNamespace);
member this.GetStronglyTypedClassCode : System.Management.CodeLanguage * string * string -> bool
Public Function GetStronglyTypedClassCode (lang As CodeLanguage, filePath As String, classNamespace As String) As Boolean

Parameter

lang
CodeLanguage

Die Sprache des zu generierenden Codes. Diese Codesprache stammt aus der CodeLanguage Enumeration.

filePath
String

Der Pfad der Datei, in die der Code geschrieben werden soll.

classNamespace
String

Der.NET-Namespace, in den die Klasse generiert werden soll. Wenn dies leer ist, wird der Namespace aus dem WMI-Namespace generiert.

Gibt zurück

true, wenn die Methode erfolgreich war; andernfalls . false

Beispiele

Im folgenden Beispiel wird eine stark typierte Klasse für die Win32_LogicalDisk-Klasse generiert. Der generierte Code befindet sich in C# für das C#-Beispiel und Visual Basic .NET für das Visual Basic .NET Beispiel.

using System;
using System.Management;
using System.CodeDom;
using System.IO;
using System.CodeDom.Compiler;
using Microsoft.CSharp;

namespace ManagementSample
{
    class GenerateCSharpCode
    {
        static void Main(string[] args)
        {
            ManagementClass cls1 = new ManagementClass(
                null, "Win32_LogicalDisk",null);
            cls1.GetStronglyTypedClassCode(
                CodeLanguage.CSharp,
                "C:\\temp\\Logicaldisk.cs",
                String.Empty);
        }
    }
}
Imports System.Management
Imports System.CodeDom
Imports System.IO
Imports System.CodeDom.Compiler

Class GenerateVBCode

    Public Overloads Shared Function _
        Main(ByVal args() As String) As Integer

        Dim cls1 As ManagementClass
        cls1 = New ManagementClass( _
            Nothing, "Win32_LogicalDisk", Nothing)
        cls1.GetStronglyTypedClassCode( _
            CodeLanguage.VB, _
            "C:\temp\Logicaldisk.vb", _
            String.Empty)

    End Function
End Class

Hinweise

.NET Framework-Sicherheit

Volle Vertrauenswürdigstellung für den unmittelbaren Anrufer. Dieses Element kann nicht von teilweise vertrauenswürdigem Code verwendet werden. Weitere Informationen finden Sie unter Verwenden von Bibliotheken aus teilweise vertrauenswürdigen Code.

Gilt für: