I have to load a couple of OCX libraries to access legacy code. I am creating the instance using Activator.CreateInstance:
var type = Type.GetTypeFromProgID(ProgId);
var comObject = Activator.CreateInstance(type);
不幸的是,Activator.CreateInstance似乎每ProgId只创造了一个案例,然而,我需要多个有不同组合的事例。
例:假定我使用X射线管治,就可以确定价值:
var instance1 = Create(progId);
Set(instance1, "key", "1");
var value1 = Get(instance1, "key"); // returns 1
var instance2 = Create(progId);
Set(instance2, "key", "2");
var value2 = Get(instance2, "key"); // returns 2
var value3 = Get(instance1, "key"); // returns 2
我需要一种办法,即一只X射线(ProgId)控制多次,而不只提及一次。