J'essaie de créer un proxy dynamique en utilisant Spring.NET et C# pour une interface COM. J'expérimente actuellement en utilisant du code, pas des fichiers de configuration. J'ai un code similaire à ce qui suit:Est-il possible de proxy une interface COM en utilisant Spring.Net?
Type comInterfaceType = typeof(ICOMInterface);
ProxyFactory proxyFactory = new ProxyFactory();
proxyFactory.AddInterface(comInterfaceType);
proxyFactory.GetProxy();
Il explose au GetProxy() appeler à l'exception suivante:
System.InvalidOperationException: The property with name ArraySubType can't be found
in the type System.Runtime.InteropServices.MarshalAsAttribute, but is present as
a named property on the attributeData
[System.Runtime.InteropServices.MarshalAsAttribute(
(System.Runtime.InteropServices.UnmanagedType)28, ArraySubType = 0, SizeParamIndex
= 0, SizeConst = 0, IidParameterIndex = 0, SafeArraySubType = 0)]
Est-ce tout simplement pas possible? J'utilise toujours Spring.NET 1.1, est-ce possible dans les versions plus récentes (que nous allons bientôt passer à bientôt)? MISE À JOUR: Après avoir expérimenté, j'ai eu la même erreur avec des paramètres légèrement différents (par exemple, UnmanagedType 44) lors de l'envoi par proxy de la classe Form.