ManagementClass.GetStronglyTypedClassCode Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Genera una clase fuertemente tipada para una clase WMI dada.
Sobrecargas
GetStronglyTypedClassCode(Boolean, Boolean) |
Genera una clase fuertemente tipada para una clase WMI dada. |
GetStronglyTypedClassCode(CodeLanguage, String, String) |
Genera una clase fuertemente tipada para una clase WMI dada. Esta función genera código para Visual Basic, C#, JScript, J# o C++, dependiendo de los parámetros de entrada. |
Comentarios
Seguridad de .NET Framework
Plena confianza para el llamador inmediato. Un código de confianza parcial no puede utilizar este miembro. Para obtener más información, consulte Uso de bibliotecas de código de confianza parcial.
GetStronglyTypedClassCode(Boolean, Boolean)
- Source:
- ManagementClass.cs
- Source:
- ManagementClass.cs
- Source:
- ManagementClass.cs
Genera una clase fuertemente tipada para una clase WMI dada.
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
Es true
para incluir la clase para administrar las propiedades del sistema; en caso contrario, es false
.
- systemPropertyClass
- Boolean
Es true
para que la clase generada administre las propiedades del sistema; en caso contrario, es false
.
Devoluciones
CodeTypeDeclaration que representa la declaración de la clase fuertemente tipada.
Ejemplos
En el ejemplo siguiente se genera una clase fuertemente tipada para la clase Win32_LogicalDisk . El código generado se genera en C# o 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
Comentarios
Seguridad de .NET Framework
Plena confianza para el llamador inmediato. Un código de confianza parcial no puede utilizar este miembro. Para obtener más información, consulte Uso de bibliotecas de código de confianza parcial.
Se aplica a
GetStronglyTypedClassCode(CodeLanguage, String, String)
- Source:
- ManagementClass.cs
- Source:
- ManagementClass.cs
- Source:
- ManagementClass.cs
Genera una clase fuertemente tipada para una clase WMI dada. Esta función genera código para Visual Basic, C#, JScript, J# o C++, dependiendo de los 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
Lenguaje del código que se va a generar. Este lenguaje de código procede de la enumeración CodeLanguage.
- filePath
- String
Ruta de acceso del archivo donde se va a escribir el código.
- classNamespace
- String
Espacio de nombres de .NET en el que se debe generar la clase. Si está vacío, el espacio de nombres se generará a partir del espacio de nombres WMI.
Devoluciones
Es true
si el método se ha ejecutado correctamente; en caso contrario, es false
.
Ejemplos
En el ejemplo siguiente se genera una clase fuertemente tipada para la clase Win32_LogicalDisk . El código generado está en C# para el ejemplo de C# y Visual Basic .NET para el ejemplo de .NET de 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
Comentarios
Seguridad de .NET Framework
Plena confianza para el llamador inmediato. Un código de confianza parcial no puede utilizar este miembro. Para obtener más información, consulte Uso de bibliotecas de código de confianza parcial.