J'ai un CLSID et j'ai besoin d'instancier ceci dans un serveur différent (DCS) où ma machine de travail est (c'est-à-dire MWS).Comment appeler un objet DCOM à partir de C#?
Maintenant, si j'utilise ce qui suit:
var type = Type.GetTypeFromCLSID(new Guid(CLSID),
Environment.MachineName, true);
var COMObject = Activator.CreateInstance(type);
var returnValue = COMObject.GetType().InvokeMember(methodName,
flags, null, COMObject, args, argModifiers, null, null);
J'obtiens l'erreur "cible COM ne met pas en œuvre IDispatch". Ok, je comprends que l'objet cible COM n'a probablement pas IDispatch, donc il échoue. Maintenant, alors essayé quelque chose d'autre, Si j'ajoute une référence de cette DLL COM dans VS, alors VS génère les assemblages interop et tout fonctionne comme la création régulière d'objet .net, mais dans ce cas l'objet est en train de générer dans mon machine locale (MWS pc) pas dans le serveur ce que je veux.
Aime toute suggestion comment puis-je faire face à cette situation?
Merci d'avance.
avez-vous résolu cela? – Mihailo
Oui, l'exportation dans msi a résolu le problème. – Moim