SymLanguageType クラス
アセンブリ: mscorlib (mscorlib.dll 内)
構文
使用例
DefineDocument を呼び出したときに SymLanguageType がどのように使用されるかについては、次のコード例を参照してください。
Imports System Imports System.Reflection Imports System.Reflection.Emit Imports System.Resources Imports System.Diagnostics.SymbolStore Namespace ILGenServer Public Class CodeGenerator Private myModuleBuilder As ModuleBuilder Private myAssemblyBuilder As AssemblyBuilder Public Sub New() ' Get the current application domain for the current thread. Dim currentDomain As AppDomain = AppDomain.CurrentDomain Dim myAssemblyName As New AssemblyName() myAssemblyName.Name = "TempAssembly" ' Define a dynamic assembly in the current domain. myAssemblyBuilder = currentDomain.DefineDynamicAssembly(myAssemblyName, _ AssemblyBuilderAccess.RunAndSave) ' Define a dynamic module in "TempAssembly" assembly. myModuleBuilder = myAssemblyBuilder.DefineDynamicModule("TempModule", "Resource.mod", True) ' Define a document for source.on 'TempModule' module. Dim myDocument As ISymbolDocumentWriter = myModuleBuilder.DefineDocument("RTAsm.il", _ SymDocumentType.Text, SymLanguageType.ILAssembly, SymLanguageVendor.Microsoft) Console.WriteLine("The object representing the defined document is:" + _ CObj(myDocument).ToString()) End Sub 'New End Class 'CodeGenerator Public Class CallerClass Public Shared Sub Main() Dim myGenerator As New CodeGenerator() End Sub 'Main End Class 'CallerClass End Namespace 'ILGenServer
using System; using System.Reflection; using System.Reflection.Emit; using System.Resources; using System.Diagnostics.SymbolStore; namespace ILGenServer { public class CodeGenerator { ModuleBuilder myModuleBuilder ; AssemblyBuilder myAssemblyBuilder ; public CodeGenerator() { // Get the current application domain for the current thread. AppDomain currentDomain = AppDomain.CurrentDomain; AssemblyName myAssemblyName = new AssemblyName(); myAssemblyName.Name = "TempAssembly"; // Define a dynamic assembly in the current domain. myAssemblyBuilder = currentDomain.DefineDynamicAssembly (myAssemblyName, AssemblyBuilderAccess.RunAndSave); // Define a dynamic module in "TempAssembly" assembly. myModuleBuilder = myAssemblyBuilder.DefineDynamicModule("TempModule","Resource.mod" ,true); // Define a document for source.on 'TempModule' module. ISymbolDocumentWriter myDocument = myModuleBuilder.DefineDocument("RTAsm.il", SymDocumentType.Text , SymLanguageType.ILAssembly,SymLanguageVendor.Microsoft); Console.WriteLine("The object representing the defined document is:"+myDocument); } } public class CallerClass { public static void Main() { CodeGenerator myGenerator = new CodeGenerator(); } } }
using namespace System; using namespace System::Reflection; using namespace System::Reflection::Emit; using namespace System::Resources; using namespace System::Diagnostics::SymbolStore; public ref class CodeGenerator { private: ModuleBuilder^ myModuleBuilder; AssemblyBuilder^ myAssemblyBuilder; public: CodeGenerator() { // Get the current application domain for the current thread. AppDomain^ currentDomain = AppDomain::CurrentDomain; AssemblyName^ myAssemblyName = gcnew AssemblyName; myAssemblyName->Name = "TempAssembly"; // Define a dynamic assembly in the current domain. myAssemblyBuilder = currentDomain->DefineDynamicAssembly( myAssemblyName, AssemblyBuilderAccess::RunAndSave ); // Define a dynamic module in S"TempAssembly" assembly. myModuleBuilder = myAssemblyBuilder->DefineDynamicModule( "TempModule", "Resource.mod", true ); // Define a document for source.on 'TempModule' module. ISymbolDocumentWriter^ myDocument = myModuleBuilder->DefineDocument( "RTAsm.il", SymDocumentType::Text, SymLanguageType::ILAssembly, SymLanguageVendor::Microsoft ); Console::WriteLine( "The object representing the defined document is: {0}", myDocument ); } }; int main() { CodeGenerator^ myGenerator = gcnew CodeGenerator; }
import System.*; import System.Reflection.*; import System.Reflection.Emit.*; import System.Resources.*; import System.Diagnostics.SymbolStore.*; public class CodeGenerator { private ModuleBuilder myModuleBuilder; private AssemblyBuilder myAssemblyBuilder; public CodeGenerator() { // Get the current application domain for the current thread. AppDomain currentDomain = AppDomain.get_CurrentDomain(); AssemblyName myAssemblyName = new AssemblyName(); myAssemblyName.set_Name("TempAssembly"); // Define a dynamic assembly in the current domain. myAssemblyBuilder = currentDomain.DefineDynamicAssembly(myAssemblyName, AssemblyBuilderAccess.RunAndSave); // Define a dynamic module in "TempAssembly" assembly. myModuleBuilder = myAssemblyBuilder.DefineDynamicModule("TempModule" , "Resource.mod", true); // Define a document for source.on 'TempModule' module. ISymbolDocumentWriter myDocument = myModuleBuilder.DefineDocument( "RTAsm.il", SymDocumentType.Text, SymLanguageType.ILAssembly, SymLanguageVendor.Microsoft); Console.WriteLine("The object representing the defined document is:" + myDocument); } //CodeGenerator } //CodeGenerator public class CallerClass { public static void main(String[] args) { CodeGenerator myGenerator = new CodeGenerator(); } //main } //CallerClass
System.Diagnostics.SymbolStore.SymLanguageType
プラットフォーム
Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。
参照
- SymLanguageType クラスのページへのリンク