LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

error 2147221164

Hi,

 

I am having trouble using Active X to start matlab.  Previously I used Windows XP with 32 bit versions of labview to start a 32 bit version of matlab.  But now with Windows 7, 64 bit labview and 64 bit matlab, I get the error "class not registered".  I have tried downgrading to 32 bit versions of labview and matlab but the same error persists.

 

I have manually registered MLapp.tbl to the computer registry and have added the matlab .ocx ActiveX controls as well.

 

I am using labview 2009 f3 and matlab 7.9.

 

Thanks for any help.

0 Kudos
Message 1 of 12
(4,013 Views)
0 Kudos
Message 2 of 12
(4,001 Views)

Yes, I followed the instructions for manual registration.  The same labview error appears.

 

The Registration Utility program from that page is not compatible with Windows 7.  The last update was August,1998.

 

 

0 Kudos
Message 3 of 12
(3,975 Views)

Is this upgraded code from a previous version of LabVIEW?  I have heard of users who have tried this and for some reason the Automation open function does not upgrade well.  In their situation, deleting the automation Open node and re-adding it has solved the problem.

 

 

0 Kudos
Message 4 of 12
(3,940 Views)

Deleting and adding back in either the ActiveX class or the automation open node do not resolve the problem.

 

It has previously been my experience that it is necessary to delete and add back in the ActiveX class when moving the vi to different machines.

 

I'm still stuck.  Thanks for any help!

0 Kudos
Message 5 of 12
(3,934 Views)

Aside from 32 vs 64 bit, was the version of MATLAB different before and now?  Because it's very likely that MathWorks changed their ActiveX functionality between versions.

 

Also I'm not sure if you need to use ActiveX in this way, but another option for using MATLAB in LabVIEW is the MATLAB script node.  This is included with LabVIEW and essentially does activeX in the background to Matlab.  However it's a bit easier to use because you just put your m-script on your block diagram.  

0 Kudos
Message 6 of 12
(3,909 Views)

The versions are the same (7.9) for 32 bit and 64 bit.

 

Yes I need to use active X in this manner.  In general I cannot use script nodes.

 

I just tested whether the matlab script node works.  It does work which suggests that the problem is not a registry problem and is instead of problem with the labview automation open node.   Has the automation open node been tested for this version of labview and matlab?

0 Kudos
Message 7 of 12
(3,903 Views)

It hasn't been tested by NI, however I'm sure it's been done by other customers out there.  The Automation Open function is used for opening any kind of ActiveX reference.  So in theory, it should work just the same as if you ran the same methods from any other environment.  Do you know if these ActiveX methods actually work for this 64 bit version of Matlab?  It might have some limited functionality.  Try running the same code in either LabVIEW 32-bit or a different programming environment and verify that it works.  If not it seems like Matlab might be to blame...

0 Kudos
Message 8 of 12
(3,875 Views)

All the code works for 32 bit Labview and 32 bit matlab running on windows XP.

 

I am trying to use windows 7, with 64 bit Labview and 64 bit matlab.

 

If I run using a matlab script node, everything is fine, but unfortunately that is not a solution that will not work in general. The matlab script node function in labview uses Active X.  So, activeX works as does matlab.  This suggests that the problem is with the automation open node in labview not a problem with  matlab.

 

0 Kudos
Message 9 of 12
(3,864 Views)

Forgive me for possibly being unclear.  What I meant to suggest was to try breaking the problem down into parts in order to pinpoint where the actual problem lies.  Currently you jumped from 32 bit LabVIEW, 32 bit Matlab and Windows XP to 64 bit LabVIEW, 64 bit Matlab and Windows 7.  These are three major changes each in itself and the problems can be a result of either of these three changes.

 

I would propose the following tests to narrow it down, if possible:

 

1) Windows 7, LabVIEW 32 Bit, Matlab 32 Bit - Determine if the operating system change is the problem

2) Windows 7, Any other Programming language - Determine if 64 bit Matlab has a problem with ActiveX

3) Windows 7, LabVIEW 32 Bit, Matlab 64 Bit - Determine if LabVIEW has a problem accessing a 64 bit ActiveX Component

4) Windows 7, LabVIEW 64 Bit, Matlab 32 Bit - Determine if LabVIEW 64 bit has a problem with ActiveX.

 

0 Kudos
Message 10 of 12
(3,801 Views)