2009-05-14 3 views
0

J'ai effectué quelques recherches sur le site et sur Internet en essayant de trouver une solution à un problème avec une application VB.NET que j'essaie de créer. Malheureusement, je suis perplexe par un message d'erreur qui m'a empêché d'avancer avec les personnalisations d'Inventor.VB.NET et AutoDesk Inventor 11 Problèmes de personnalisation

Tools: Visual Studio 2005 sp1, Inventor 11 Stand Alone install 
OS: Windows Vista 64 sp1 

J'ai installé les outils de développement dans le dossier SDK. J'ai ensuite ajouté une référence dans mon projet VB.NET dans COM au composant nommé: AutoDesk Inventor Object Library. Il apparaît sous les références pour mon projet:

Reference Name: Autodesk Inventor Object Library 
Type: COM 
Version: 1.0.0.0 
Copy Local: True 
Path: C:\Users\rschmalt\Visual Studio 2005\Projects\ 
     InvTest\InvTest\obj\Debug\Interop.Inventor.dll 

Mon code est le suivant:

'Opens Inventor Apprentice session to read part numbers 

Dim oApprentice As New Inventor.ApprenticeServerComponent 
Dim asmDoc As Inventor.ApprenticeServerDocument 
Dim refDoc As Inventor.ApprenticeServerDocument 

asmDoc = oApprentice.Open(strIAMLocation) 

For Each refDoc In asmDoc.ReferencedDocuments 
    MessageBox.Show(refDoc.FullFileName.ToString) 
Next 

Quand je l'exécute, je reçois le message suivant:

Retrieving the COM class factory for component with CLSID {C343ED84-A129-11D3-B799-0060B0F159EF} failed due to the following error: 80040154

J'ai essayé de naviguer directement dans la DLL (Interop.Inventor.dll) et il apparaît ensuite comme un type .NET dans les références, mais l'erreur reste la même.

Est-il possible qu'il y ait un conflit entre vista 64 (Inventor 11 est 32bit)? Aucune suggestion?

Répondre

0
+0

Chose intéressante, je regardais à travers cela et poursuivait l'option "corflags". Cela n'a pas fonctionné ou du moins, je n'ai pas réussi à le faire fonctionner (en ciblant la DLL). Cependant, je suis allé dans les options du projet, compiler, Advanced Compile Options, Target CPU et le définir en x86 - le code fonctionne maintenant! Cependant, cela crée-t-il un problème à long terme pour mes clients x64? –

Questions connexes