En utilisant VS2008 .NET 3.5 SP1.NET 3.5 ActiveX dll InteropServices.COMException
Je suis en train d'utiliser un dll ActiveX dans mon C# projet d'application console et je reçois cette exception d'exécution:
System.Runtime.InteropServices.COMException (0x800702E4): Retrieving the COM class factory for component with CLSID {4E58088E-7275-4EAA-8958-A9CCC971DDE9} failed due to the following error: 800702e4.
Comment puis-je trouver une solution à ce problème?
J'ai utilisé regasm.exe pour enregistrer dans DLL précédemment et il s'est enregistré avec succès.
nomde DLL est interop.sterling.dll
code simple:
using SterlingLib;
public class OrderPlacer
{
private void SendOrder()
{
var order = new SterlingLib.STIOrder();
}
}
J'ai ajouté la référence à cette DLL en naviguant à et l'ajouter comme référence - placer ensuite dans le dossier /bin/debug
en utilisant la réflexion:
SterlingLib.STIOrderClass is a class whose base class is System.__ComObject
It implements the following interfaces
SterlingLib.ISTIOrder
SterlingLib.STIOrder
SterlingLib.STIOrder is an interface
Je cours Vista donc je pense que cela peut être un problème UAC ne permettant pas les droits complets contrairement à si je courais XP.
Pourriez-vous ajouter des détails sur le composant que vous utilisez et éventuellement ajouter le code qui provoque l'erreur? –
regasm.exe est d'enregistrer des assemblages .net comme com, vouliez-vous dire que vous avez utilisé regsvr32? –
J'ai essayé regsvr32 et il est retourné avec le module de message a été chargé mais le point d'entrée DLLRegisterServer n'a pas été trouvé. Assurez-vous que la DLL est une DLL valide – chrisg