mscorlib [00 00 00 00 00 00 00 00 04 00 00 00 00 00 00 00] 1.0.5000.0 2.0.0.0 4.0.0.0 Gtk# is thread aware, but not thread safe; See the <link location="node:gtk-sharp/programming/threads">Gtk# Thread Programming</link> for details. System.Object System.ICloneable System.Runtime.InteropServices._AssemblyName System.Runtime.Serialization.IDeserializationCallback System.Runtime.Serialization.ISerializable System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.None) System.Runtime.InteropServices.ComDefaultInterface(typeof(System.Runtime.InteropServices._AssemblyName)) System.Runtime.InteropServices.ComVisible(true)

The object contains information about an assembly, which you can use to bind to that assembly. An assembly's identity consists of the following:

Simple name.

Version number.

Cryptographic key pair.

Supported culture.

The simple name is typically the file name for the manifest file without its extension. The key pair includes a public and private key, used to create strong-name signatures for assemblies.

All compilers that support the common language runtime will emit the simple name of a nested class, and reflection constructs a mangled name when queried, in accordance with the following conventions.

Delimiter

Meaning

Backslash (\)

Escape character.

Comma (,)

Precedes the assembly name.

Plus sign (+)

Precedes a nested class.

For example, the fully qualified name for a class might look like this:

ContainingClass+NestedClass,MyAssembly

A "++" becomes "\+\+", and a "\" becomes "\\".

This qualified name can be persisted and later used to load the . To search for and load a , use either with the type name only or with the assembly qualified type name. with the type name only will look for the in the caller's assembly and then in the System assembly. with the assembly qualified type name will look for the in any assembly.

A fully specified must have the name, culture, public key or public key token, major version, minor version, build number, and revision number parameters. The last four are packaged in the type.

To create a simple name, create an object using the default constructor and set the . The other properties are optional.

To create a full strong name, create an object using the default constructor and set the and . The other properties are optional. Use and to set the public key and the strong name. The strong name signing always uses the hash algorithm.

To ensure that the names are constructed correctly, use the following properties:

You can also get the name by using the `/l` option with the Global Assembly Cache Tool (Gacutil.exe)

For a partially specified strong name, create an object using the default constructor and set the name and public key. An assembly created using such an can be signed later using the Assembly Linker (Al.exe).

It is possible to specify a public key and a with inconsistent values. This can be useful in developer scenarios. In this case, the public key retrieved with specifies the correct public key, while the specifies the public and private keys used during development. When the runtime detects a mismatch between the and the public key, it looks up in the registry the correct key that matches the public key.

The format of the display name of an is a comma-delimited Unicode string that begins with the name, as follows:

Name <,Culture = CultureInfo> <,Version = Major.Minor.Build.Revision> <, StrongName> <,PublicKeyToken> '\0'

Name is the textual name of the assembly. CultureInfo is the RFC1766-format-defined culture. Major, Minor, Build, and Revision are the major version, minor version, build number, and revision number of the assembly. StrongName is the hexadecimal-encoded low-order 64 bits of the hash value of the public key generated using the SHA-1 hashing algorithm and the public key specified by . PublicKeyToken is the hexadecimal-encoded public key specified by .

Hexadecimal encoding is defined as the conversion of each byte of a binary object to two hexadecimal characters, progressing from least to most significant byte. Additional display values will be added as deemed necessary.

If the full public key is known, then PublicKey may be substituted for StrongName.

Also note that except for Name, which must come first, the lexical order of parameters is unimportant. However, any parameter (Version, Culture, StrongName or PublicKey) not specifically set is considered to be omitted, and the is then considered partial. When specifying partial information, Name parameters must be specified in the order described above.

When supplying a display name, the convention StrongName =null or PublicKey= null indicates that binding and matching against a simply named assembly is required. Additionally, the convention Culture= "" (double quote representing an empty string) indicates matching against the default culture.

The following example shows an for a simply named assembly with default culture.

`ExampleAssembly, Culture=""`

The following example shows a fully specified reference for a strongly named assembly with culture "en".

`ExampleAssembly, Version=1.0.0.0, Culture=en, PublicKeyToken=a5d015c7d5a0b012`

Describes an assembly's unique identity in full.

- Constructor
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  To be added

  Initializes a new instance of the class.

- Constructor
  2.0.0.0
  4.0.0.0

  The supplied is parsed, and the appropriate fields of the new are initialized with values from the display name. This is the recommended way of parsing display names. Writing your own code to parse display names is not recommended.

  Initializes a new instance of the class with the specified display name.

  The display name of the assembly, as returned by the property.
- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Object

  A new object is created, identical to the original.

  Makes a copy of this object.

  An object that is a copy of this object.

- Property
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.String To be added: an object of type 'string'

  When an assembly is loaded, this value can also be obtained using the property.

  If the assembly was loaded as a byte array, this property returns the location of the caller of the method overload, not the location of the loaded assembly.

  Do not use an with only the property set. The property does not supply any elements of the assembly identity (such as name or version), so loading does not occur according to load-by-identity rules, as you would expect from the method. Instead, the assembly is loaded using load-from rules. For information about the disadvantages of using the load-from context, see the method overload or Best Practices for Assembly Loading.

  Gets or sets the location of the assembly as a URL.

- Property
  4.0.0.0
  System.Runtime.InteropServices.ComVisible(false)
  System.Reflection.AssemblyContentType To be added. To be added.

  Gets or sets a value that indicates what type of content the assembly contains.

- Property
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Globalization.CultureInfo To be added: an object of type 'Globalization.CultureInfo' To be added

  Gets or sets the culture supported by the assembly.

- Property
  4.0.0.0
  System.String To be added. To be added.

  Gets or sets the name of the culture associated with the assembly.

- Property
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.String To be added: an object of type 'string' To be added

  Gets the URI, including escape characters, that represents the codebase.

- Property
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Reflection.AssemblyNameFlags To be added: an object of type 'AssemblyNameFlags' To be added

  Gets or sets the attributes of the assembly.

- Property
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.String To be added: an object of type 'string'

  The display name typically consists of the simple name, version number, supported culture, and public key. For example:

  `mylib, Version=1.2.1900.0, Culture=neutral, PublicKeyToken=a14f3033def15840`

  Writing your own code to parse display names is not recommended. Instead, pass the display name to the constructor, which parses it and populates the appropriate fields of the new .

  When an assembly is loaded, this value can also be obtained using the property.

  Gets the full name of the assembly, also known as the display name.

- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Reflection.AssemblyName ``

  This will only work if the file contains an assembly manifest. This method causes the file to be opened and closed, but the assembly is not added to this domain.

  Gets the for a given file.

  An object that represents the given assembly file.

  The path for the assembly whose is to be returned.
- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Void `` `` To be added

  Gets serialization information with all the data needed to recreate an instance of this AssemblyName.

  The object to be populated with serialization information. The destination context of the serialization.
- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Byte[] To be added

  Gets the public key of the assembly.

  A byte array that contains the public key of the assembly.

- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Byte[] To be added

  Gets the public key token, which is the last 8 bytes of the SHA-1 hash of the public key under which the application or assembly is signed.

  A byte array that contains the public key token.

- Property
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Configuration.Assemblies.AssemblyHashAlgorithm To be added: an object of type 'Configuration.Assemblies.AssemblyHashAlgorithm'

  Starting with the net_v40_long, the property of an object that is returned by the method is if there is no hash algorithm for the referenced assembly, or if the hash algorithm of the referenced assembly is not identified by the enumeration. In previous versions of the .NET Framework, the property returned in this situation.

  Gets or sets the hash algorithm used by the assembly manifest.

- Property
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Reflection.StrongNameKeyPair To be added: an object of type 'StrongNameKeyPair'

  When the runtime loads an assembly, it does not set the property. The getter for the property is only useful if the user set the property before using the object to create a dynamic assembly, and subsequently wants to retrieve the key pair.

  Gets or sets the public and private cryptographic key pair that is used to create a strong name signature for the assembly.

- Property
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.String To be added: an object of type 'string'

  The manifest file is the file that contains the assembly manifest.

  For example, the simple name of a single-file assembly named "MyAssembly.dll" is "MyAssembly".

  Gets or sets the simple name of the assembly. This is usually, but not necessarily, the file name of the manifest file of the assembly, minus its extension.

- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Void `` To be added

  Implements the interface and is called back by the deserialization event when deserialization is complete.

  The source of the deserialization event.
- Property
  2.0.0.0
  4.0.0.0
  System.Reflection.ProcessorArchitecture To be added.

  Beginning with the net_v40_long, this property always returns for reference assemblies.

  Gets or sets a value that identifies the processor and bits-per-word of the platform targeted by an executable.

- Method
  2.0.0.0
  4.0.0.0
  System.Boolean `` ``

  The comparison depends only on the simple assembly name. It ignores version, culture, and public key token.

  Returns a value indicating whether two assembly names are the same. The comparison is based on the simple assembly names.

  true if the simple assembly names are the same; otherwise, false.

  The reference assembly name. The assembly name that is compared to the reference assembly.
- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Void ``

  You must also use the method to provide a public key token. Otherwise, a is thrown when the method is called.

  Sets the public key identifying the assembly.

  A byte array containing the public key of the assembly.
- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Void ``

  When you set the public key by calling the method, you must also use the method to provide a public key token. Otherwise, a is thrown when the method is called.

  Sets the public key token, which is the last 8 bytes of the SHA-1 hash of the public key under which the application or assembly is signed.

  A byte array containing the public key token of the assembly.
- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Void `` `` `` `` `` To be added. To be added. To be added. To be added. To be added. To be added. To be added.
- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Void `` `` ``

  This method is for access to managed classes from unmanaged code, and should not be called from managed code. For more information about IDispatch::GetTypeInfo, see the MSDN Library.

  Retrieves the type information for an object, which can then be used to get the type information for an interface.

  The type information to return. The locale identifier for the type information. Receives a pointer to the requested type information object.
- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Void `` To be added. To be added. To be added.
- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Void `` `` `` `` `` `` `` `` To be added. To be added. To be added. To be added. To be added. To be added. To be added. To be added. To be added. To be added.
- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.String

  See the description of for the format of the returned string.

  Returns the full name of the assembly, also known as the display name.

  The full name of the assembly, or the class name if the full name cannot be determined.

- Property
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Version To be added: an object of type 'Version'

  All components of the version must be integers greater than or equal to zero. Metadata restricts the major, minor, build, and revision components for an assembly to a maximum value of - 1. If a component exceeds this value, no error is thrown; however, in a dynamic assembly, that component is zero.

  Gets or sets the major, minor, build, and revision numbers of the assembly.

- Property
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Configuration.Assemblies.AssemblyVersionCompatibility To be added: an object of type 'Configuration.Assemblies.AssemblyVersionCompatibility'

  information indicates, for example, that the assembly cannot execute side-by-side with other versions due to conflicts over a device driver.

  Currently, always returns , and is not used by the loader. This property is reserved for a future feature.

  Gets or sets the information related to the assembly's compatibility with other assemblies.