<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
		<id>http://www.nfex.ru/index.php?action=history&amp;feed=atom&amp;title=Csharp%2FCSharp_Tutorial%2FAssembly%2FAssembly_Load</id>
		<title>Csharp/CSharp Tutorial/Assembly/Assembly Load - История изменений</title>
		<link rel="self" type="application/atom+xml" href="http://www.nfex.ru/index.php?action=history&amp;feed=atom&amp;title=Csharp%2FCSharp_Tutorial%2FAssembly%2FAssembly_Load"/>
		<link rel="alternate" type="text/html" href="http://www.nfex.ru/index.php?title=Csharp/CSharp_Tutorial/Assembly/Assembly_Load&amp;action=history"/>
		<updated>2026-04-17T06:59:30Z</updated>
		<subtitle>История изменений этой страницы в вики</subtitle>
		<generator>MediaWiki 1.30.0</generator>

	<entry>
		<id>http://www.nfex.ru/index.php?title=Csharp/CSharp_Tutorial/Assembly/Assembly_Load&amp;diff=5930&amp;oldid=prev</id>
		<title> в 15:31, 26 мая 2010</title>
		<link rel="alternate" type="text/html" href="http://www.nfex.ru/index.php?title=Csharp/CSharp_Tutorial/Assembly/Assembly_Load&amp;diff=5930&amp;oldid=prev"/>
				<updated>2010-05-26T15:31:53Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr style=&quot;vertical-align: top;&quot; lang=&quot;ru&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Предыдущая&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Версия 15:31, 26 мая 2010&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; style=&quot;text-align: center;&quot; lang=&quot;ru&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(нет различий)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
			</entry>

	<entry>
		<id>http://www.nfex.ru/index.php?title=Csharp/CSharp_Tutorial/Assembly/Assembly_Load&amp;diff=5931&amp;oldid=prev</id>
		<title>Admin: 1 версия</title>
		<link rel="alternate" type="text/html" href="http://www.nfex.ru/index.php?title=Csharp/CSharp_Tutorial/Assembly/Assembly_Load&amp;diff=5931&amp;oldid=prev"/>
				<updated>2010-05-26T12:17:46Z</updated>
		
		<summary type="html">&lt;p&gt;1 версия&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;==Assemblies==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;To quote Microsoft, &amp;quot;Assemblies are the building blocks of the .NET Framework.&amp;quot;&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;An assembly is composed of four sections.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;OL&amp;gt;&amp;lt;LI&amp;gt;The first is the assembly manifest.&amp;lt;/LI&amp;gt;&amp;lt;LI&amp;gt;The manifest contains information about the assembly itself.&amp;lt;/LI&amp;gt;&amp;lt;LI&amp;gt;The manifest includes such things as the name of the assembly, its version number, type mapping information, and cultural settings.&amp;lt;/LI&amp;gt;&amp;lt;LI&amp;gt;The second section is type metadata&amp;lt;/LI&amp;gt;&amp;lt;LI&amp;gt;The type metadata is information about the data types.&amp;lt;/LI&amp;gt;&amp;lt;LI&amp;gt;The type metadata aids in cross-language interoperability.&amp;lt;/LI&amp;gt;&amp;lt;LI&amp;gt;The third part of an assembly is the program code stored in Microsoft Intermediate Language (MSIL) format.&amp;lt;/LI&amp;gt;&amp;lt;LI&amp;gt;The fourth constituent of an assembly is the resources used by the program.&amp;lt;/LI&amp;gt;&amp;lt;/OL&amp;gt;&lt;br /&gt;
12.4.Assembly Load&lt;br /&gt;
12.4.1.&lt;br /&gt;
Assemblies&lt;br /&gt;
12.4.2.&lt;br /&gt;
&amp;lt;A href=&amp;quot;/Tutorial/CSharp/0240__Assembly/differencebetweenAssemblyLoadandAssemblyLoadFrom.htm&amp;quot;&amp;gt;difference between Assembly.Load and Assembly.LoadFrom&amp;lt;/a&amp;gt;&lt;br /&gt;
12.4.3.&lt;br /&gt;
&amp;lt;A href=&amp;quot;/Tutorial/CSharp/0240__Assembly/LoadtypesclassesfromaAssemblyexefile.htm&amp;quot;&amp;gt;Load types(classes) from a Assembly(exe file)&amp;lt;/a&amp;gt;&lt;br /&gt;
12.4.4.&lt;br /&gt;
&amp;lt;A href=&amp;quot;/Tutorial/CSharp/0240__Assembly/LoadtheSystemXmlassemblyusinganAssemblyName.htm&amp;quot;&amp;gt;Load the System.Xml assembly using an AssemblyName&amp;lt;/a&amp;gt;&lt;br /&gt;
12.4.5.&lt;br /&gt;
&amp;lt;A href=&amp;quot;/Tutorial/CSharp/0240__Assembly/CreateTypebyAssemblyqualifedtypename.htm&amp;quot;&amp;gt;Create Type by Assembly qualifed type name&amp;lt;/a&amp;gt;&lt;br /&gt;
12.4.6.&lt;br /&gt;
&amp;lt;A href=&amp;quot;/Tutorial/CSharp/0240__Assembly/LateBinding.htm&amp;quot;&amp;gt;Late Binding&amp;lt;/a&amp;gt;&lt;br /&gt;
12.4.7.&lt;br /&gt;
&amp;lt;A href=&amp;quot;/Tutorial/CSharp/0240__Assembly/Assemblyunloading.htm&amp;quot;&amp;gt;Assembly unloading&amp;lt;/a&amp;gt;&lt;br /&gt;
12.4.8.&lt;br /&gt;
&amp;lt;A href=&amp;quot;/Tutorial/CSharp/0240__Assembly/Dynamicassemblyintrospection.htm&amp;quot;&amp;gt;Dynamic assembly introspection&amp;lt;/a&amp;gt;&lt;br /&gt;
12.4.9.&lt;br /&gt;
&amp;lt;A href=&amp;quot;/Tutorial/CSharp/0240__Assembly/DeeperReflectionListingAlltheTypesinanAssembly.htm&amp;quot;&amp;gt;Deeper Reflection: Listing All the Types in an Assembly&amp;lt;/a&amp;gt;&lt;br /&gt;
12.4.10.&lt;br /&gt;
&amp;lt;A href=&amp;quot;/Tutorial/CSharp/0240__Assembly/AssemblyLoader.htm&amp;quot;&amp;gt;Assembly Loader&amp;lt;/a&amp;gt;&lt;br /&gt;
12.4.11.&lt;br /&gt;
&amp;lt;A href=&amp;quot;/Tutorial/CSharp/0240__Assembly/GetManifestResourceStream.htm&amp;quot;&amp;gt;GetManifestResourceStream&amp;lt;/a&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Assembly Loader==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;using System;&lt;br /&gt;
using System.Reflection;&lt;br /&gt;
using System.IO;&lt;br /&gt;
public class AssemblyLoader&lt;br /&gt;
{&lt;br /&gt;
  private Assembly LoadedAssembly;&lt;br /&gt;
  public AssemblyLoader(string LoadedAssemblyName, bool PartialName)&lt;br /&gt;
  {&lt;br /&gt;
      Console.WriteLine(LoadedAssemblyName);&lt;br /&gt;
    if(PartialName == true)&lt;br /&gt;
      LoadedAssembly = Assembly.LoadWithPartialName(LoadedAssemblyName);&lt;br /&gt;
    else&lt;br /&gt;
      LoadedAssembly = Assembly.Load(LoadedAssemblyName);&lt;br /&gt;
    WritePropertiesToConsole();&lt;br /&gt;
  }&lt;br /&gt;
  private void WritePropertiesToConsole()&lt;br /&gt;
  {&lt;br /&gt;
    Console.WriteLine(&amp;quot;Full Name: {0}&amp;quot;, LoadedAssembly.FullName);&lt;br /&gt;
    Console.WriteLine(&amp;quot;Location: {0}&amp;quot;, LoadedAssembly.Location);&lt;br /&gt;
    Console.WriteLine(&amp;quot;Code Base: {0}&amp;quot;, LoadedAssembly.CodeBase);&lt;br /&gt;
    Console.WriteLine(&amp;quot;Escaped Code Base: {0}&amp;quot;, LoadedAssembly.EscapedCodeBase);&lt;br /&gt;
    Console.WriteLine(&amp;quot;Loaded from GAC: {0}&amp;quot;, LoadedAssembly.GlobalAssemblyCache);&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
public class MainClass&lt;br /&gt;
{&lt;br /&gt;
  static void Main(string[] args)&lt;br /&gt;
  {&lt;br /&gt;
    AssemblyLoader Loader;&lt;br /&gt;
    Loader = new AssemblyLoader(&amp;quot;System.Xml, Version=1.0.3300.0, Culture=neutral, PublicKeyToken=b77a5c561934e089&amp;quot;, false);&lt;br /&gt;
    Loader = new AssemblyLoader(&amp;quot;System.Xml&amp;quot;, false);&lt;br /&gt;
    Loader = new AssemblyLoader(&amp;quot;System.Xml&amp;quot;, true);&lt;br /&gt;
  }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Assembly unloading==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;using System;&lt;br /&gt;
using System.Collections;&lt;br /&gt;
using System.Collections.Generic;&lt;br /&gt;
using System.Diagnostics;&lt;br /&gt;
using System.Globalization;&lt;br /&gt;
using System.IO;&lt;br /&gt;
using System.Reflection;&lt;br /&gt;
using System.Security;&lt;br /&gt;
using System.Security.Permissions;&lt;br /&gt;
using System.Security.Policy;&lt;br /&gt;
public class MainClass&lt;br /&gt;
{&lt;br /&gt;
    public static void Main()&lt;br /&gt;
    {&lt;br /&gt;
        AppDomain ad = AppDomain.CreateDomain(&amp;quot;IsolatedDLL&amp;quot;);&lt;br /&gt;
        AppDomain.Unload(ad);&lt;br /&gt;
    }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Create Type by Assembly qualifed type name==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;using System;&lt;br /&gt;
using System.Text;&lt;br /&gt;
class MainClass&lt;br /&gt;
{&lt;br /&gt;
    public static void Main()&lt;br /&gt;
    {&lt;br /&gt;
        &lt;br /&gt;
        Type t5 = Type.GetType(&amp;quot;System.Data.DataSet,System.Data,&amp;quot; +&lt;br /&gt;
            &amp;quot;Version=2.0.0.0,Culture=neutral,PublicKeyToken=b77a5c561934e089&amp;quot;);&lt;br /&gt;
    }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Deeper Reflection: Listing All the Types in an Assembly==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;using System;&lt;br /&gt;
using System.Reflection;&lt;br /&gt;
enum MyEnum&lt;br /&gt;
{&lt;br /&gt;
    Val1,&lt;br /&gt;
    Val2,&lt;br /&gt;
    Val3&lt;br /&gt;
}&lt;br /&gt;
class MyClass&lt;br /&gt;
{&lt;br /&gt;
}&lt;br /&gt;
struct MyStruct&lt;br /&gt;
{&lt;br /&gt;
}&lt;br /&gt;
class MainClass&lt;br /&gt;
{&lt;br /&gt;
    public static void Main(String[] args)&lt;br /&gt;
    {&lt;br /&gt;
        Assembly a = Assembly.LoadFrom (args[0]);&lt;br /&gt;
        Type[] types = a.GetTypes();&lt;br /&gt;
        &lt;br /&gt;
        foreach (Type t in types)&lt;br /&gt;
        {&lt;br /&gt;
            Console.WriteLine (&amp;quot;Name: {0}&amp;quot;, t.FullName);&lt;br /&gt;
            Console.WriteLine (&amp;quot;Namespace: {0}&amp;quot;, t.Namespace);&lt;br /&gt;
            Console.WriteLine (&amp;quot;Base Class: {0}&amp;quot;, t.BaseType.FullName);&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==difference between Assembly.Load and Assembly.LoadFrom==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;using System;&lt;br /&gt;
using System.Reflection;&lt;br /&gt;
class Starter {&lt;br /&gt;
    static void Main() {&lt;br /&gt;
        Assembly library = Assembly.Load(&amp;quot;library, Version=2.0.0.0, &amp;quot; +&lt;br /&gt;
          &amp;quot;Culture=Neutral, PublicKeyToken=9b184fc90fb9648d&amp;quot;);&lt;br /&gt;
        Console.WriteLine(&amp;quot;Assembly.Load:  {0}&amp;quot;, library.FullName);&lt;br /&gt;
        library = Assembly.LoadFrom(&amp;quot;library.dll&amp;quot;);&lt;br /&gt;
        Console.WriteLine(&amp;quot;Assembly.LoadFrom {0}&amp;quot;, library.FullName);&lt;br /&gt;
    }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Dynamic assembly introspection==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;using System;&lt;br /&gt;
using System.Collections.Generic;&lt;br /&gt;
using System.Text;&lt;br /&gt;
using System.Threading;&lt;br /&gt;
using System.Reflection;&lt;br /&gt;
using System.Reflection.Emit;&lt;br /&gt;
public class MainClass&lt;br /&gt;
{&lt;br /&gt;
    public static void Main()&lt;br /&gt;
    {&lt;br /&gt;
        int x = 10;&lt;br /&gt;
        Assembly a = Assembly.Load(&amp;quot;mscorlib&amp;quot;);&lt;br /&gt;
        Type t3 = a.GetType(&amp;quot;System.Int32&amp;quot;);&lt;br /&gt;
        &lt;br /&gt;
        Type t1 = typeof(int);&lt;br /&gt;
        Type t2 = x.GetType();&lt;br /&gt;
        Type t4 = Type.GetType(&amp;quot;System.Int32&amp;quot;);&lt;br /&gt;
        Console.WriteLine(t1 == t2);&lt;br /&gt;
        Console.WriteLine(t2 == t3);&lt;br /&gt;
        Console.WriteLine(t3 == t4);&lt;br /&gt;
    }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
&amp;lt;pre class=codeResult&amp;gt;True&lt;br /&gt;
True&lt;br /&gt;
True&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==GetManifestResourceStream==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;using System;&lt;br /&gt;
using System.IO;&lt;br /&gt;
using System.Reflection;&lt;br /&gt;
using System.Collections.Generic;&lt;br /&gt;
public class Loader {&lt;br /&gt;
    static Dictionary&amp;lt;string, Assembly&amp;gt; libs = new Dictionary&amp;lt;string, Assembly&amp;gt;();&lt;br /&gt;
    static void Main() {&lt;br /&gt;
        AppDomain.CurrentDomain.AssemblyResolve += FindAssem;&lt;br /&gt;
        Program.Go();&lt;br /&gt;
    }&lt;br /&gt;
    static Assembly FindAssem(object sender, ResolveEventArgs args) {&lt;br /&gt;
        string shortName = new AssemblyName(args.Name).Name;&lt;br /&gt;
        if (libs.ContainsKey(shortName)) return libs[shortName];&lt;br /&gt;
        using (Stream s = Assembly.GetExecutingAssembly().GetManifestResourceStream(&amp;quot;Libs.&amp;quot; + shortName + &amp;quot;.dll&amp;quot;)) {&lt;br /&gt;
            byte[] data = new BinaryReader(s).ReadBytes((int)s.Length);&lt;br /&gt;
            Assembly a = Assembly.Load(data);&lt;br /&gt;
            libs[shortName] = a;&lt;br /&gt;
            return a;&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
public class Program {&lt;br /&gt;
    public static void Go() {&lt;br /&gt;
    }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Late Binding==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;using System;&lt;br /&gt;
using System.Reflection;&lt;br /&gt;
using System.IO;&lt;br /&gt;
public class MainClass&lt;br /&gt;
{&lt;br /&gt;
  public static int Main(string[] args)&lt;br /&gt;
  {&lt;br /&gt;
    Assembly a = null;&lt;br /&gt;
    try&lt;br /&gt;
    {&lt;br /&gt;
      a = Assembly.Load(&amp;quot;YourLibraryName&amp;quot;);&lt;br /&gt;
    }&lt;br /&gt;
    catch(FileNotFoundException e)&lt;br /&gt;
    {Console.WriteLine(e.Message);}&lt;br /&gt;
  &lt;br /&gt;
    Type classType = a.GetType(&amp;quot;YourLibraryName.ClassName&amp;quot;);&lt;br /&gt;
    object obj = Activator.CreateInstance(classType);&lt;br /&gt;
  &lt;br /&gt;
    MethodInfo mi = classType.GetMethod(&amp;quot;MethodName&amp;quot;);&lt;br /&gt;
    mi.Invoke(obj, null);&lt;br /&gt;
    object[] paramArray = new object[2];    &lt;br /&gt;
    paramArray[0] = &amp;quot;Fred&amp;quot;;&lt;br /&gt;
    paramArray[1] = 4;&lt;br /&gt;
    mi = classType.GetMethod(&amp;quot;MethodName2&amp;quot;);&lt;br /&gt;
    mi.Invoke(obj, paramArray);&lt;br /&gt;
    return 0;&lt;br /&gt;
  }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Load the System.Xml assembly using an AssemblyName==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;using System;&lt;br /&gt;
using System.Reflection;&lt;br /&gt;
using System.Globalization;&lt;br /&gt;
class MainClass&lt;br /&gt;
{&lt;br /&gt;
    public static void Main()&lt;br /&gt;
    {&lt;br /&gt;
        AssemblyName name2 = new AssemblyName();&lt;br /&gt;
        name2.Name = &amp;quot;System.Xml&amp;quot;;&lt;br /&gt;
        name2.Version = new Version(2, 0, 0, 0);&lt;br /&gt;
        name2.CultureInfo = new CultureInfo(&amp;quot;&amp;quot;);    // Neutral culture.&lt;br /&gt;
        name2.SetPublicKeyToken( new byte[] {0xb7, 0x7a, 0x5c, 0x56, 0x19, 0x34, 0xe0, 0x89});&lt;br /&gt;
        Assembly a2 = Assembly.Load(name2);&lt;br /&gt;
    }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Load types(classes) from a Assembly(exe file)==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;using System; &lt;br /&gt;
 &lt;br /&gt;
class MyClass { &lt;br /&gt;
  int x; &lt;br /&gt;
  int y; &lt;br /&gt;
 &lt;br /&gt;
  public MyClass(int i) { &lt;br /&gt;
    Console.WriteLine(&amp;quot;Constructing MyClass(int). &amp;quot;); &lt;br /&gt;
    x = y = i;  &lt;br /&gt;
    show(); &lt;br /&gt;
  } &lt;br /&gt;
 &lt;br /&gt;
  public MyClass(int i, int j) { &lt;br /&gt;
    Console.WriteLine(&amp;quot;Constructing MyClass(int, int). &amp;quot;); &lt;br /&gt;
    x = i; &lt;br /&gt;
    y = j; &lt;br /&gt;
    show(); &lt;br /&gt;
  } &lt;br /&gt;
 &lt;br /&gt;
  public int sum() { &lt;br /&gt;
    return x+y; &lt;br /&gt;
  } &lt;br /&gt;
 &lt;br /&gt;
  public bool isBetween(int i) { &lt;br /&gt;
    if((x &amp;lt; i) &amp;amp;&amp;amp; (i &amp;lt; y)) return true; &lt;br /&gt;
    else return false; &lt;br /&gt;
  } &lt;br /&gt;
 &lt;br /&gt;
  public void set(int a, int b) { &lt;br /&gt;
    Console.Write(&amp;quot;Inside set(int, int). &amp;quot;); &lt;br /&gt;
    x = a; &lt;br /&gt;
    y = b; &lt;br /&gt;
    show(); &lt;br /&gt;
  } &lt;br /&gt;
 &lt;br /&gt;
  // Overload set. &lt;br /&gt;
  public void set(double a, double b) { &lt;br /&gt;
    Console.Write(&amp;quot;Inside set(double, double). &amp;quot;); &lt;br /&gt;
    x = (int) a; &lt;br /&gt;
    y = (int) b; &lt;br /&gt;
    show(); &lt;br /&gt;
  } &lt;br /&gt;
 &lt;br /&gt;
  public void show() { &lt;br /&gt;
    Console.WriteLine(&amp;quot;Values are x: {0}, y: {1}&amp;quot;, x, y); &lt;br /&gt;
  } &lt;br /&gt;
} &lt;br /&gt;
 &lt;br /&gt;
class AnotherClass { &lt;br /&gt;
  string remark; &lt;br /&gt;
 &lt;br /&gt;
  public AnotherClass(string str) { &lt;br /&gt;
    remark = str; &lt;br /&gt;
  } &lt;br /&gt;
 &lt;br /&gt;
  public void show() { &lt;br /&gt;
    Console.WriteLine(remark); &lt;br /&gt;
  } &lt;br /&gt;
} &lt;br /&gt;
 &lt;br /&gt;
/////////////////////////////////////&lt;br /&gt;
using System; &lt;br /&gt;
using System.Reflection; &lt;br /&gt;
 &lt;br /&gt;
class MainClass { &lt;br /&gt;
  public static void Main() { &lt;br /&gt;
    int val; &lt;br /&gt;
 &lt;br /&gt;
    Assembly asm = Assembly.LoadFrom(&amp;quot;MyClasses.exe&amp;quot;); &lt;br /&gt;
 &lt;br /&gt;
    Type[] alltypes = asm.GetTypes(); &lt;br /&gt;
    foreach(Type temp in alltypes) &lt;br /&gt;
      Console.WriteLine(&amp;quot;Found: &amp;quot; + temp.Name); &lt;br /&gt;
 &lt;br /&gt;
    Console.WriteLine(); &lt;br /&gt;
 &lt;br /&gt;
  } &lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	</feed>