3
中的數組我有一個C#中的COM對象和一個Silverlight應用程序(升級權限),它是這個COM對象的客戶端。C#+ COM,修改參數
COM對象:
[ComVisible(true)]
public interface IProxy
{
void Test(int[] integers);
}
[ComVisible(true)]
[ClassInterface(ClassInterfaceType.None)]
public class Proxy : IProxy
{
[ComVisible(true)]
public void Test(int[] integers)
{
integers[0] = 999;
}
}
Silverlight客戶端:
dynamic proxy = AutomationFactory.CreateObject("NevermindComProxy.Proxy");
int[] integers = new int[5];
proxy.Test(integers);
我excpect整數[0] == 999,但該陣列是完整的。
如何使COM對象修改數組?
UPD 適用於非silverlight應用程序。 Silverlight失敗。如何解決silverlight?
爲什麼使用COM作爲2個.NET程序集之間的互操作性引擎?也許你應該使用Assembly.Load來代替? – AlexanderMP 2010-09-20 11:23:00
目標是使用silverlight應用程序的本地代碼。所以我做silverlight - > COMProxy - >本地代碼。據我瞭解,silverlight不能從沙箱中挑出原生代碼。請糾正我,如果我錯了。 – 2010-09-20 11:34:50
這是超出我的知識,對不起。祝你好運找到答案! – AlexanderMP 2010-09-21 08:44:48