ManagementClass.GetStronglyTypedClassCode Metódus

Definíció

Egy adott WMI-osztályhoz egy erősen gépelt osztályt hoz létre.

Túlterhelések

Name Description
GetStronglyTypedClassCode(Boolean, Boolean)

Egy adott WMI-osztályhoz egy erősen gépelt osztályt hoz létre.

GetStronglyTypedClassCode(CodeLanguage, String, String)

Egy adott WMI-osztályhoz egy erősen gépelt osztályt hoz létre. Ez a függvény a bemeneti paraméterektől függően Visual Basic, C#, JScript, J# vagy C++ kódokat hoz létre.

Megjegyzések

.NET-keretrendszer biztonsága

Teljes bizalom az azonnali hívó számára. Ezt a tagot nem lehet részben megbízható kóddal használni. További információ: Kódtárak használata részlegesen megbízható kódból.

GetStronglyTypedClassCode(Boolean, Boolean)

Forrás:
ManagementClass.cs
Forrás:
ManagementClass.cs
Forrás:
ManagementClass.cs
Forrás:
ManagementClass.cs

Egy adott WMI-osztályhoz egy erősen gépelt osztályt hoz létre.

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

Paraméterek

includeSystemClassInClassDef
Boolean

truea rendszertulajdonságok kezelésére szolgáló osztály felvétele; egyéb esetben. false

systemPropertyClass
Boolean

truehogy a létrehozott osztály kezelje a rendszertulajdonságokat; egyéb esetben. false

Válaszok

Az CodeTypeDeclaration erősen gépelt osztály deklarációja.

Példák

Az alábbi példa egy erősen gépelt osztályt hoz létre a Win32_LogicalDisk osztályhoz. A generált kód C# vagy Visual Basic .NET formátumban jön létre.

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

Megjegyzések

.NET-keretrendszer biztonsága

Teljes bizalom az azonnali hívó számára. Ezt a tagot nem lehet részben megbízható kóddal használni. További információ: Kódtárak használata részlegesen megbízható kódból.

A következőre érvényes:

GetStronglyTypedClassCode(CodeLanguage, String, String)

Forrás:
ManagementClass.cs
Forrás:
ManagementClass.cs
Forrás:
ManagementClass.cs
Forrás:
ManagementClass.cs

Egy adott WMI-osztályhoz egy erősen gépelt osztályt hoz létre. Ez a függvény a bemeneti paraméterektől függően Visual Basic, C#, JScript, J# vagy C++ kódokat hoz létre.

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

Paraméterek

lang
CodeLanguage

A létrehozandó kód nyelve. Ez a kódnyelv az CodeLanguage enumerálásból származik.

filePath
String

Annak a fájlnak az elérési útja, amelyben a kódot meg kell írni.

classNamespace
String

A.NET névtér, amelybe az osztályt létre kell hozni. Ha ez üres, a névtér a WMI-névtérből jön létre.

Válaszok

true, ha a módszer sikeres volt; egyéb esetben. false

Példák

Az alábbi példa egy erősen gépelt osztályt hoz létre a Win32_LogicalDisk osztályhoz. A generált kód a C# példában, a Visual Basic .NET példa 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)
        {
            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

Megjegyzések

.NET-keretrendszer biztonsága

Teljes bizalom az azonnali hívó számára. Ezt a tagot nem lehet részben megbízható kóddal használni. További információ: Kódtárak használata részlegesen megbízható kódból.

A következőre érvényes: