2010-04-28 19 views
0

Je suis un débutant complet à la programmation Windows et COM, en essayant d'utiliser com4j afin d'appeler un objet COM à partir de Java. Com4j génère des interfaces Java à partir des définitions COM "souvent trouvés dans les fichiers .ocx, .dll, .exe et/ou .tlb". Il m'est facile de localiser le fichier .ocx de mon objet COM cible, mais je n'ai aucune idée de l'interface standard iStream. O1232DLL (c: \ Windows \ Windows32 \ Ole32.dll?), Mais ni le générateur com4j ni oleviewer n'ouvrent ce fichier.Dans quelle DLL est définie l'interface COM iStream?

Des indices?

Répondre

1

On dirait qu'il est défini dans Comsvcs.dll.

+0

La DLL semble correcte. Malheureusement, com4j n'a pas réussi à générer des interfaces à partir de celui-ci. Je cherche des réponses. –

1

La documentation que vous avez liée aux références Objidl.idl. com4j pourrait être en mesure de traiter les fichiers IDL.

Sinon, vous pouvez essayer de compiler l'IDL dans un TLB en utilisant MIDL: http://msdn.microsoft.com/en-us/library/aa367372(VS.85).aspx

+0

Une idée où je peux trouver objidl.idl? –

+0

Cela fait partie du Kit de développement Windows Platform SDK, mais si vous avez installé Visual Studio ou VC++, vous l'avez également. Sur ma machine, j'ai trouvé des versions mulitple enracinées dans C: \ Program Files (x86) \ Microsoft SDKs \ Windows \. –