J'ai un fichier .exe m'a donné qui a cours COM à l'intérieur - ce sont de C++, .net pas ComVisible
typesen utilisant des classes dans un COM exe de .Net
Je voudrais utilisez ces classes dans mon projet .net, mais je ne peux pas ajouter de référence à l'exe; quand j'essaye je reçois
DIALOG BOX:
---------------------------
Microsoft Visual Studio
---------------------------
A reference to 'C:\Program Files\blah\blah.exe'
could not be added. Please make sure that the
file is accessible, and that it is a valid
assembly or COM component.
---------------------------
OK
---------------------------
tlbimp échoue également;
TLBIMP OUTPUT:
> tlbimp blah.exe
Microsoft (R) .NET Framework Type Library
to Assembly Converter 3.5.30729.1
Copyright (C) Microsoft Corporation. All rights reserved.
TlbIml : error TI0000 : The input file
'c:\program files\blah\blah.exe' is not
a valid type library
Mais il semble vraiment qu'il existe des classes COM disponibles; dans ma ruche HKEY_CLASSES_ROOT
, je peux voir les entrées pour les différentes classes COM;
REGISTRY ENTRY:
\HKEY_CLASSES_ROOT
\CLSID
\{456B14EA-4CCC-11D4-BB91-0020AFC894E9}
@="COM.Classname"
\InprocHandler32
@="ole32.dll"
\LocalServer32
"LocalServer32"=hex(7) ...
@="C:\\PROGRA~2\\blah\blah.exe"
\ProgID
@="COM.Classname"
Quelqu'un at-il une idée sur la façon, et même si, je peux utiliser ces classes COM à partir d'un projet .net?
avez-vous essayé la liaison tardive? –
La liaison tardive vaut probablement la peine d'être essayée. Sur une note différente, 'tlbimp' vous dit le problème. C'est un exécutable, pas une bibliothèque de type (dll). –