Val Brown Posted July 31, 2010 Report Share Posted July 31, 2010 (edited) I have a third party DLL that was crafted in 2006 for 32-bit WIndows. I have a legacy built LV app (using 8.6.1) that references this DLL. The 32 bit EXE works correctly in W7 64-bit; however, when I try to access the DLL in my development environment (LV 2009 32-bit running on W7 64-bit OS) I consistently get a 0 for the value of the reference. Interestingly the Automation Open primitive crashes LV. Any good ideas? Edited July 31, 2010 by Val Brown Quote Link to comment
Rolf Kalbermatter Posted August 3, 2010 Report Share Posted August 3, 2010 I have a third party DLL that was crafted in 2006 for 32-bit WIndows. I have a legacy built LV app (using 8.6.1) that references this DLL. The 32 bit EXE works correctly in W7 64-bit; however, when I try to access the DLL in my development environment (LV 2009 32-bit running on W7 64-bit OS) I consistently get a 0 for the value of the reference. Interestingly the Automation Open primitive crashes LV. Any good ideas? Are you sure you have 32bit LabVIEW installed and not 64bit? You can't call a 32 bit DLL from a 64 bit application or vice versa. They live in completely different environments and have no direct access to each others memory. What do you mean with the DLL returning 0 for the reference while the Automation Open crashes? Is this DLL an ActiveX DLL or a normal DLL, accessed through the Call Library node? Otherwise there might be a problem with registration of your component/DLL. Quote Link to comment
Val Brown Posted August 3, 2010 Author Report Share Posted August 3, 2010 Are you sure you have 32bit LabVIEW installed and not 64bit? Yes. What do you mean with the DLL returning 0 for the reference while the Automation Open crashes? Is this DLL an ActiveX DLL or a normal DLL, accessed through the Call Library node? Yes it's an ActiveX DLL so accessed via Property and Invoke Nodes. Otherwise there might be a problem with registration of your component/DLL. I don't know what the problem could be re: registration as the component exists, is registered, and, when used on the same system, works fine with the already built (in 8.6.1 LV) EXE. The problems ONLY occur in the development environments: with LV 2009 on Vista 32 I get the 0 return from the Automation Open, whereas on W7 64-bit I get LV to crash while trying to "use" the Automation Open. Quote Link to comment
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.