AssemblyName コンストラクタ (String)
アセンブリ: mscorlib (mscorlib.dll 内)


指定した assemblyName が解析され、表示名の値を使用して新しい AssemblyName の適切なフィールドが初期化されます。表示名を解析する場合は、この方法をお勧めします。表示名を解析するために独自のコードを作成することはお勧めしません。

MyAssembly.exe という名前の動的アセンブリを作成して、ハード ディスクに保存するコード例を次に示します。この例の実行後は、MSIL 逆アセンブラ (Ildasm.exe) を使用してアセンブリのメタデータを調べることができます。
Imports System Imports System.Reflection Public Class AssemblyNameDemo Public Shared Sub Main() ' Create an AssemblyName, specifying the display name, and then ' print the properties. Dim myAssemblyName As New _ AssemblyName("Example, Version=1.0.0.2001, Culture=en-US, PublicKeyToken=null") Console.WriteLine("Name: {0}", myAssemblyName.Name) Console.WriteLine("Version: {0}", myAssemblyName.Version) Console.WriteLine("CultureInfo: {0}", myAssemblyName.CultureInfo) Console.WriteLine("FullName: {0}", myAssemblyName.FullName) End Sub End Class ' This code example produces output similar to the following: ' 'Name: Example 'Version: 1.0.0.2001 'CultureInfo: en-US 'FullName: Example, Version=1.0.0.2001, Culture=en-US, PublicKeyToken=null
using System; using System.Reflection; public class AssemblyNameDemo { public static void Main() { // Create an AssemblyName, specifying the display name, and then // print the properties. AssemblyName myAssemblyName = new AssemblyName("Example, Version=1.0.0.2001, Culture=en-US, PublicKeyToken=null"); Console.WriteLine("Name: {0}", myAssemblyName.Name); Console.WriteLine("Version: {0}", myAssemblyName.Version); Console.WriteLine("CultureInfo: {0}", myAssemblyName.CultureInfo); Console.WriteLine("FullName: {0}", myAssemblyName.FullName); } } /* This code example produces output similar to the following: Name: Example Version: 1.0.0.2001 CultureInfo: en-US FullName: Example, Version=1.0.0.2001, Culture=en-US, PublicKeyToken=null */
using namespace System; using namespace System::Reflection; int main() { // Create an AssemblyName, specifying the display name, and then // print the properties. AssemblyName^ myAssemblyName = gcnew AssemblyName("Example, Version=1.0.0.2001, Culture=en-US, PublicKeyToken=null"); Console::WriteLine("Name: {0}", myAssemblyName->Name); Console::WriteLine("Version: {0}", myAssemblyName->Version); Console::WriteLine("CultureInfo: {0}", myAssemblyName->CultureInfo); Console::WriteLine("FullName: {0}", myAssemblyName->FullName); } /* This code example produces output similar to the following: Name: Example Version: 1.0.0.2001 CultureInfo: en-US FullName: Example, Version=1.0.0.2001, Culture=en-US, PublicKeyToken=null */

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 によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


AssemblyName コンストラクタ

名前 | 説明 |
---|---|
AssemblyName () | AssemblyName クラスの新しいインスタンスを初期化します。 .NET Compact Framework によってサポートされています。 |
AssemblyName (String) | 指定した表示名を使用して AssemblyName クラスの新しいインスタンスを初期化します。 |

AssemblyName コンストラクタ ()
アセンブリ: mscorlib (mscorlib.dll 内)


MyAssembly.exe という名前の動的アセンブリを作成して、ハード ディスクに保存するコード例を次に示します。この例の実行後は、MSIL 逆アセンブラ (Ildasm.exe) を使用してアセンブリのメタデータを調べることができます。
Imports System Imports System.Reflection Imports System.Threading Imports System.Reflection.Emit Imports Microsoft.VisualBasic Public Class AssemblyName_Constructor Public Shared Sub MakeAssembly(myAssemblyName As AssemblyName, fileName As String) ' Get the assembly builder from the application domain associated with the current thread. Dim myAssemblyBuilder As AssemblyBuilder = Thread.GetDomain().DefineDynamicAssembly(myAssemblyName, AssemblyBuilderAccess.RunAndSave) ' Create a dynamic module in the assembly. Dim myModuleBuilder As ModuleBuilder = myAssemblyBuilder.DefineDynamicModule("MyModule", fileName) ' Create a type in the module. Dim myTypeBuilder As TypeBuilder = myModuleBuilder.DefineType("MyType") ' Create a method called 'Main'. Dim myMethodBuilder As MethodBuilder = myTypeBuilder.DefineMethod("Main", MethodAttributes.Public Or MethodAttributes.HideBySig Or MethodAttributes.Static, GetType(object), Nothing) Dim myILGenerator As ILGenerator = myMethodBuilder.GetILGenerator() ' Use the utility method to generate the IL instructions that print a string to the console. myILGenerator.EmitWriteLine("Hello World!") ' Generate the 'ret' IL instruction. myILGenerator.Emit(OpCodes.Ret) ' End the creation of the type. myTypeBuilder.CreateType() ' Set the method with name 'Main' as the entry point in the assembly. myAssemblyBuilder.SetEntryPoint(myMethodBuilder) myAssemblyBuilder.Save(fileName) End Sub 'MakeAssembly Public Shared Sub Main() ' Create a dynamic assembly with name 'MyAssembly' and build version '1.0.0.2001'. Dim myAssemblyName As New AssemblyName() myAssemblyName.Name = "MyAssembly" myAssemblyName.Version = New Version("1.0.0.2001") MakeAssembly(myAssemblyName, "MyAssembly.exe") ' Get all the assemblies currently loaded in the application domain. Dim myAssemblies As [Assembly]() = Thread.GetDomain().GetAssemblies() ' Get the dynamic assembly named 'MyAssembly'. Dim myAssembly As [Assembly] = Nothing Dim i As Integer For i = 0 To myAssemblies.Length - 1 If [String].Compare(myAssemblies(i).GetName().Name, "MyAssembly") = 0 Then myAssembly = myAssemblies(i) End If Next i If Not (myAssembly Is Nothing) Then Console.WriteLine(ControlChars.Cr + "Displaying the assembly name" + ControlChars.Cr) Console.WriteLine(myAssembly) End If End Sub 'Main End Class 'AssemblyName_Constructor
using System; using System.Reflection; using System.Threading; using System.Reflection.Emit; public class AssemblyName_Constructor { public static void MakeAssembly(AssemblyName myAssemblyName, string fileName) { // Get the assembly builder from the application domain associated with the current thread. AssemblyBuilder myAssemblyBuilder = Thread.GetDomain().DefineDynamicAssembly(myAssemblyName, AssemblyBuilderAccess.RunAndSave); // Create a dynamic module in the assembly. ModuleBuilder myModuleBuilder = myAssemblyBuilder.DefineDynamicModule("MyModule", fileName); // Create a type in the module. TypeBuilder myTypeBuilder = myModuleBuilder.DefineType("MyType"); // Create a method called 'Main'. MethodBuilder myMethodBuilder = myTypeBuilder.DefineMethod("Main", MethodAttributes.Public | MethodAttributes.HideBySig | MethodAttributes.Static, typeof(void), null); // Get the Intermediate Language generator for the method. ILGenerator myILGenerator = myMethodBuilder.GetILGenerator(); // Use the utility method to generate the IL instructions that print a string to the console. myILGenerator.EmitWriteLine("Hello World!"); // Generate the 'ret' IL instruction. myILGenerator.Emit(OpCodes.Ret); // End the creation of the type. myTypeBuilder.CreateType(); // Set the method with name 'Main' as the entry point in the assembly. myAssemblyBuilder.SetEntryPoint(myMethodBuilder); myAssemblyBuilder.Save(fileName); } public static void Main() { // Create a dynamic assembly with name 'MyAssembly' and build version '1.0.0.2001'. AssemblyName myAssemblyName = new AssemblyName(); myAssemblyName.Name = "MyAssembly"; myAssemblyName.Version = new Version("1.0.0.2001"); MakeAssembly(myAssemblyName, "MyAssembly.exe"); // Get all the assemblies currently loaded in the application domain. Assembly[] myAssemblies = Thread.GetDomain().GetAssemblies(); // Get the dynamic assembly named 'MyAssembly'. Assembly myAssembly = null; for(int i = 0; i < myAssemblies.Length; i++) { if(String.Compare(myAssemblies[i].GetName().Name, "MyAssembly") == 0) myAssembly = myAssemblies[i]; } if(myAssembly != null) { Console.WriteLine("\nDisplaying the assembly name\n"); Console.WriteLine(myAssembly); } } }
using namespace System; using namespace System::Reflection; using namespace System::Threading; using namespace System::Reflection::Emit; static void MakeAssembly( AssemblyName^ myAssemblyName, String^ fileName ) { // Get the assembly builder from the application domain associated with the current thread. AssemblyBuilder^ myAssemblyBuilder = Thread::GetDomain()->DefineDynamicAssembly( myAssemblyName, AssemblyBuilderAccess::RunAndSave ); // Create a dynamic module in the assembly. ModuleBuilder^ myModuleBuilder = myAssemblyBuilder->DefineDynamicModule( "MyModule", fileName ); // Create a type in the module. TypeBuilder^ myTypeBuilder = myModuleBuilder->DefineType( "MyType" ); // Create a method called 'Main'. MethodBuilder^ myMethodBuilder = myTypeBuilder->DefineMethod( "Main", static_cast<MethodAttributes>(MethodAttributes::Public | MethodAttributes::HideBySig | MethodAttributes::Static), void::typeid, nullptr ); // Get the Intermediate Language generator for the method. ILGenerator^ myILGenerator = myMethodBuilder->GetILGenerator(); // Use the utility method to generate the IL instructions that print a String* to the console. myILGenerator->EmitWriteLine( "Hello World!" ); // Generate the 'ret' IL instruction. myILGenerator->Emit( OpCodes::Ret ); // End the creation of the type. myTypeBuilder->CreateType(); // Set the method with name 'Main' as the entry point in the assembly. myAssemblyBuilder->SetEntryPoint( myMethodBuilder ); myAssemblyBuilder->Save( fileName ); } int main() { // Create a dynamic assembly with name 'MyAssembly' and build version '1.0.0.2001'. AssemblyName^ myAssemblyName = gcnew AssemblyName; myAssemblyName->Name = "MyAssembly"; myAssemblyName->Version = gcnew Version( "1.0.0.2001" ); MakeAssembly( myAssemblyName, "MyAssembly.exe" ); // Get all the assemblies currently loaded in the application domain. array<Assembly^>^myAssemblies = Thread::GetDomain()->GetAssemblies(); // Get the dynamic assembly named 'MyAssembly'. Assembly^ myAssembly = nullptr; for ( int i = 0; i < myAssemblies->Length; i++ ) { if ( String::Compare( myAssemblies[ i ]->GetName()->Name, "MyAssembly" ) == 0 ) myAssembly = myAssemblies[ i ]; } if ( myAssembly != nullptr ) { Console::WriteLine( "\nDisplaying the assembly name\n" ); Console::WriteLine( myAssembly ); } }
import System.*; import System.Reflection.*; import System.Threading.*; import System.Reflection.Emit.*; public class AssemblyNameConstructor { public static void MakeAssembly(AssemblyName myAssemblyName, String fileName) { // Get the assembly builder from the application domain associated // with the current thread. AssemblyBuilder myAssemblyBuilder = System.Threading.Thread.GetDomain(). DefineDynamicAssembly(myAssemblyName, AssemblyBuilderAccess.RunAndSave); // Create a dynamic module in the assembly. ModuleBuilder myModuleBuilder = myAssemblyBuilder.DefineDynamicModule( "MyModule", fileName); // Create a type in the module. TypeBuilder myTypeBuilder = myModuleBuilder.DefineType("MyType"); // Create a method called 'main'. MethodBuilder myMethodBuilder = myTypeBuilder.DefineMethod("main", MethodAttributes.Public | MethodAttributes.HideBySig | MethodAttributes.Static, void.class.ToType(), null); // Get the Intermediate Language generator for the method. ILGenerator myILGenerator = myMethodBuilder.GetILGenerator(); // Use the utility method to generate the IL instructions that print // a string to the console. myILGenerator.EmitWriteLine("Hello World!"); // Generate the 'ret' IL instruction. myILGenerator.Emit(OpCodes.Ret); // End the creation of the type. myTypeBuilder.CreateType(); // Set the method with name 'main' as the entry point in the assembly. myAssemblyBuilder.SetEntryPoint(myMethodBuilder); myAssemblyBuilder.Save(fileName); } //MakeAssembly public static void main(String[] args) { // Create a dynamic assembly with name 'MyAssembly' and // build version '1.0.0.2001'. AssemblyName myAssemblyName = new AssemblyName(); myAssemblyName.set_Name("MyAssembly"); myAssemblyName.set_Version(new Version("1.0.0.2001")); MakeAssembly(myAssemblyName, "MyAssembly.exe"); // Get all the assemblies currently loaded in the application domain. Assembly myAssemblies[] = System.Threading.Thread.GetDomain(). GetAssemblies(); // Get the dynamic assembly named 'MyAssembly'. Assembly myAssembly = null; for (int i = 0; i < myAssemblies.length; i++) { if (String.Compare(((Assembly)myAssemblies.get_Item(i)).GetName(). get_Name(), "MyAssembly") == 0) { myAssembly = (Assembly)myAssemblies.get_Item(i); } } if (myAssembly != null) { Console.WriteLine("\nDisplaying the assembly name\n"); Console.WriteLine(myAssembly); } } //main } //AssemblyNameConstructor

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


- AssemblyName コンストラクタのページへのリンク