本文整理汇总了C#中System.AppDomain.CreateInstanceFrom方法的典型用法代码示例。如果您正苦于以下问题:C# AppDomain.CreateInstanceFrom方法的具体用法?C# AppDomain.CreateInstanceFrom怎么用?C# AppDomain.CreateInstanceFrom使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类System.AppDomain
的用法示例。
在下文中一共展示了AppDomain.CreateInstanceFrom方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Test
//引入命名空间
using System;
public interface ITest
{
void Test(string greeting);
}
public class MarshalableExample : MarshalByRefObject, ITest
{
static void Main()
{
// Construct a path to the current assembly.
string assemblyPath = Environment.CurrentDirectory + "\\" +
typeof(MarshalableExample).Assembly.GetName().Name + ".exe";
AppDomain ad = AppDomain.CreateDomain("MyDomain");
System.Runtime.Remoting.ObjectHandle oh =
ad.CreateInstanceFrom(assemblyPath, "MarshalableExample");
object obj = oh.Unwrap();
// Three ways to use the newly created object, depending on how
// much is known about the type: Late bound, early bound through
// a mutually known interface, or early binding of a known type.
//
obj.GetType().InvokeMember("Test",
System.Reflection.BindingFlags.InvokeMethod,
Type.DefaultBinder, obj, new object[] { "Hello" });
ITest it = (ITest) obj;
it.Test("Hi");
MarshalableExample ex = (MarshalableExample) obj;
ex.Test("Goodbye");
}
public void Test(string greeting)
{
Console.WriteLine("{0} from '{1}'!", greeting,
AppDomain.CurrentDomain.FriendlyName);
}
}
输出:
Hello from 'MyDomain'! Hi from 'MyDomain'! Goodbye from 'MyDomain'!