आप यहां समाधान ढूंढ सकते हैं:http://rekiwi.blogspot.com/2008/12/unable-to-determine-identity-of-domain.html
COM घटक में, उपयुक्त साक्ष्य के साथ एक नया ऐपडोमेन बनाएं और उसमें कोड निष्पादित करें।
यहां एक कोड उदाहरण दिया गया है जिसने मेरे लिए समस्या का समाधान किया:
AppDomainSetup setup = new AppDomainSetup();
setup.ApplicationBase = AppDomain.CurrentDomain.BaseDirectory.ToString();
//Then we need our evidence
System.Security.Policy.Evidence evidence = new System.Security.Policy.Evidence();
evidence.AddHost(new System.Security.Policy.Zone(System.Security.SecurityZone.MyComputer));
//Now we can fire up an AppDomain running with that evidence.
AppDomain domain = AppDomain.CreateDomain("YourDll.YourClass", evidence, setup);
YourDll.YourClass yourclass = (YourDll.YourClass)domain.CreateInstanceAndUnwrap(typeof(YourDll.YourClass).Assembly.FullName, typeof(YourDll.YourClass).FullName);
yourclass.CallYourMethod();
किसी भी प्रकार को आप AppDomains पर मार्शल करना चाहते हैं [Serializable ()] चिह्नित करना होगा और MarshalByRefObject से इनहेरिट होना चाहिए। उदाहरण के लिए:
namespace YourDll
{
[Serializable()]
public class YourClass: MarshalByRefObject
{
...