VSTA does not support the "new" operator. A possible work around for this scenario would be to add 2 methods, one to return a new A and another to return a new A[]. Then, the add-in method would change to use these new host methods.
Host Side:
virtual public A[] MyCallbackFunction(String Param1, String Param2)
{ return null; }
public A getNewA(string param1, string param2)
{
return new A(param1, param2);
}
public A[] getNewAs(A param1, A param2)
{
return new A[] { param1, param2 };
}
Add-In:
public override A[] MyCallbackFunction(String Param1, String Param2)
{
//return new A[] { new A(Param1, "0815"), new A(Param2, "42") };
A a1 = this.getNewA(Param1, "0815");
A a2 = this.getNewA(Param2, "42");
A[] a3 = this.getNewAs(a1, a2);
return a3;
}
Also, are you using VSTA v 1 or 2?
Thanks,
-Melody