ManagementClass.GetStronglyTypedClassCode Metod

Definition

Genererar en starkt skriven klass för en viss WMI-klass.

Överlagringar

Name Description
GetStronglyTypedClassCode(Boolean, Boolean)

Genererar en starkt skriven klass för en viss WMI-klass.

GetStronglyTypedClassCode(CodeLanguage, String, String)

Genererar en starkt skriven klass för en viss WMI-klass. Den här funktionen genererar kod för Visual Basic, C#, JScript, J#eller C++ beroende på indataparametrarna.

Kommentarer

.NET Framework-säkerhet

Fullständigt förtroende för den omedelbara uppringaren. Den här medlemmen kan inte användas av delvis betrodd kod. Mer information finns i Använda bibliotek från delvis betrodd kod.

GetStronglyTypedClassCode(Boolean, Boolean)

Källa:
ManagementClass.cs
Källa:
ManagementClass.cs
Källa:
ManagementClass.cs
Källa:
ManagementClass.cs

Genererar en starkt skriven klass för en viss WMI-klass.

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

Parametrar

includeSystemClassInClassDef
Boolean

trueför att inkludera klassen för att hantera systemegenskaper; annars . false

systemPropertyClass
Boolean

trueför att låta den genererade klassen hantera systemegenskaper. annars . false

Returer

En CodeTypeDeclaration som representerar deklarationen för klassen med stark typ.

Exempel

I följande exempel genereras en starkt skriven klass för klassen Win32_LogicalDisk . Den genererade koden skapas i C# eller Visual Basic .NET.

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

Kommentarer

.NET Framework-säkerhet

Fullständigt förtroende för den omedelbara uppringaren. Den här medlemmen kan inte användas av delvis betrodd kod. Mer information finns i Använda bibliotek från delvis betrodd kod.

Gäller för

GetStronglyTypedClassCode(CodeLanguage, String, String)

Källa:
ManagementClass.cs
Källa:
ManagementClass.cs
Källa:
ManagementClass.cs
Källa:
ManagementClass.cs

Genererar en starkt skriven klass för en viss WMI-klass. Den här funktionen genererar kod för Visual Basic, C#, JScript, J#eller C++ beroende på indataparametrarna.

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

Parametrar

lang
CodeLanguage

Språket för den kod som ska genereras. Det här kodspråket CodeLanguage kommer från uppräkningen.

filePath
String

Sökvägen till filen där koden ska skrivas.

classNamespace
String

Det .NET namnområde som klassen ska genereras till. Om detta är tomt genereras namnområdet från WMI-namnområdet.

Returer

true, om metoden lyckades. annars . false

Exempel

I följande exempel genereras en starkt skriven klass för klassen Win32_LogicalDisk . Den genererade koden finns i C# för C#-exemplet och Visual Basic .NET för Visual Basic .NET exempel.

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

Kommentarer

.NET Framework-säkerhet

Fullständigt förtroende för den omedelbara uppringaren. Den här medlemmen kan inte användas av delvis betrodd kod. Mer information finns i Använda bibliotek från delvis betrodd kod.

Gäller för