ManagementClass.GetStronglyTypedClassCode 方法      
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
为给定的 WMI 类生成强类型类。
重载
| GetStronglyTypedClassCode(Boolean, Boolean) | 
						 为给定的 WMI 类生成强类型类。  | 
        	
| GetStronglyTypedClassCode(CodeLanguage, String, String) | 
						 为给定的 WMI 类生成强类型类。 此函数生成 Visual Basic、C#、JScript、J# 或 C++ 的代码,具体情况取决于输入参数。  | 
        	
注解
.NET Framework 安全性
对直接调用方的完全信任。 此成员不能由部分信任的代码使用。 有关详细信息,请参阅 使用部分受信任的代码中的库。
GetStronglyTypedClassCode(Boolean, Boolean)
- Source:
 - ManagementClass.cs
 
- Source:
 - ManagementClass.cs
 
- Source:
 - ManagementClass.cs
 
为给定的 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)
- Source:
 - ManagementClass.cs
 
- Source:
 - ManagementClass.cs
 
- Source:
 - ManagementClass.cs
 
为给定的 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 安全性
对直接调用方的完全信任。 此成员不能由部分信任的代码使用。 有关详细信息,请参阅 使用部分受信任的代码中的库。