ManagementClass.GetStronglyTypedClassCode Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Gera uma classe fortemente tipada para uma determinada classe WMI.
Sobrecargas
GetStronglyTypedClassCode(Boolean, Boolean) |
Gera uma classe fortemente tipada para uma determinada classe WMI. |
GetStronglyTypedClassCode(CodeLanguage, String, String) |
Gera uma classe fortemente tipada para uma determinada classe WMI. Esta função gera código para Visual Basic, C#, JScript, J# ou C++ dependendo dos parâmetros de entrada. |
Comentários
Segurança do .NET Framework
Confiança total para o chamador imediato. Este membro não pode ser usado pelo código parcialmente confiável. Para obter mais informações, consulte Usando bibliotecas de código parcialmente confiável.
GetStronglyTypedClassCode(Boolean, Boolean)
- Origem:
- ManagementClass.cs
- Origem:
- ManagementClass.cs
- Origem:
- ManagementClass.cs
Gera uma classe fortemente tipada para uma determinada classe 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
Parâmetros
- includeSystemClassInClassDef
- Boolean
true
para incluir a classe para gerenciar as propriedades do sistema, caso contrário, false
.
- systemPropertyClass
- Boolean
true
para que a classe gerada gerencie as propriedades do sistema, caso contrário, false
.
Retornos
Um CodeTypeDeclaration que representa a declaração da classe fortemente tipada.
Exemplos
O exemplo a seguir gera uma classe fortemente tipada para a classe Win32_LogicalDisk . O código gerado é produzido em C# ou 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
Comentários
Segurança do .NET Framework
Confiança total para o chamador imediato. Este membro não pode ser usado pelo código parcialmente confiável. Para obter mais informações, consulte Usando bibliotecas de código parcialmente confiável.
Aplica-se a
GetStronglyTypedClassCode(CodeLanguage, String, String)
- Origem:
- ManagementClass.cs
- Origem:
- ManagementClass.cs
- Origem:
- ManagementClass.cs
Gera uma classe fortemente tipada para uma determinada classe WMI. Esta função gera código para Visual Basic, C#, JScript, J# ou C++ dependendo dos parâmetros de entrada.
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
Parâmetros
- lang
- CodeLanguage
A linguagem do código a ser gerado. Essa linguagem de código é proveniente da enumeração CodeLanguage.
- filePath
- String
O caminho do arquivo em que o código deve ser gravado.
- classNamespace
- String
O namespace .NET em que a classe deve ser gerada. Se essa propriedade estiver vazia, o namespace será gerado do namespace do WMI.
Retornos
true
, se o método for bem-sucedido, caso contrário, false
.
Exemplos
O exemplo a seguir gera uma classe fortemente tipada para a classe Win32_LogicalDisk . O código gerado está em C# para o exemplo C# e o .NET do Visual Basic para o exemplo do .NET do Visual Basic.
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
Comentários
Segurança do .NET Framework
Confiança total para o chamador imediato. Este membro não pode ser usado pelo código parcialmente confiável. Para obter mais informações, consulte Usando bibliotecas de código parcialmente confiável.