ManagementClass.GetStronglyTypedClassCode Метод

Определение

Создает строго типизированный класс для заданного класса WMI.

Перегрузки

Имя Описание
GetStronglyTypedClassCode(Boolean, Boolean)

Создает строго типизированный класс для заданного класса WMI.

GetStronglyTypedClassCode(CodeLanguage, String, String)

Создает строго типизированный класс для заданного класса WMI. Эта функция создает код для Visual Basic, C#, JScript, J#или C++ в зависимости от входных параметров.

Комментарии

Безопасность .NET Framework

Полное доверие для немедленного вызывающего абонента. Этот элемент не может использоваться частично доверенным кодом. Дополнительные сведения см. в разделе "Использование библиотек из частично доверенного кода".

GetStronglyTypedClassCode(Boolean, Boolean)

Создает строго типизированный класс для заданного класса WMI.

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

Параметры

includeSystemClassInClassDef
Boolean

true для включения класса для управления свойствами системы; falseв противном случае .

systemPropertyClass
Boolean

true для управления системными свойствами созданного класса; falseв противном случае .

Возвращаемое значение

Объявление CodeTypeDeclaration для строго типизированного класса.

Примеры

В следующем примере создается строго типизированный класс для класса Win32_LogicalDisk . Созданный код создается в C# или 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

Комментарии

Безопасность .NET Framework

Полное доверие для немедленного вызывающего абонента. Этот элемент не может использоваться частично доверенным кодом. Дополнительные сведения см. в разделе "Использование библиотек из частично доверенного кода".

Применяется к

GetStronglyTypedClassCode(CodeLanguage, String, String)

Создает строго типизированный класс для заданного класса WMI. Эта функция создает код для Visual Basic, C#, JScript, J#или C++ в зависимости от входных параметров.

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

Параметры

lang
CodeLanguage

Язык создаваемого кода. Этот язык кода поступает из CodeLanguage перечисления.

filePath
String

Путь к файлу, в котором должен быть записан код.

classNamespace
String

Пространство имен.NET, в котором должен быть создан класс. Если это пусто, пространство имен будет создано из пространства имен WMI.

Возвращаемое значение

true, если метод выполнен успешно; falseв противном случае .

Примеры

В следующем примере создается строго типизированный класс для класса Win32_LogicalDisk . Созданный код находится в C# для примера C# и Visual Basic .NET для примера 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

Комментарии

Безопасность .NET Framework

Полное доверие для немедленного вызывающего абонента. Этот элемент не может использоваться частично доверенным кодом. Дополнительные сведения см. в разделе "Использование библиотек из частично доверенного кода".

Применяется к