public static ScriptRuntime CreateRemote(AppDomain domain, ScriptRuntimeSetup setup) {
ContractUtils.RequiresNotNull(domain, "domain");
#if !CLR2
return (ScriptRuntime)domain.CreateInstanceAndUnwrap(
typeof(ScriptRuntime).Assembly.FullName,
typeof(ScriptRuntime).FullName,
false,
BindingFlags.Default,
null,
new object[] { setup },
null,
null
);
#else
//The API CreateInstanceAndUnwrap is obsolete in Dev10.
return (ScriptRuntime)domain.CreateInstanceAndUnwrap(
typeof(ScriptRuntime).Assembly.FullName,
typeof(ScriptRuntime).FullName,
false,
BindingFlags.Default,
null,
new object[] { setup },
null,
null,
null
);
#endif
}