03-29-2007 04:01 PM
03-30-2007 10:35 AM
03-30-2007 01:39 PM
Brandon, let me explain that I am not tying to "embed" my CVI GUI DLL into LabVIEW, they are separate applications, separate windows. They simply communicate with each other in a more elegant manner. ...more elegant that what I once achieved whenI had a CVI app communicating with a VEE application, as I described above. And hey, I'm almost already there because of that previous success...!
I was expecting replies from this CVI forum that would help me over this hurdle, related to tricks I may not know about that relate to the event-handling aspects of CVI. As one case in point, on the former (unofficial) CVI mailing list that ran for years before this forum existed, Guillaume Dargaud once built on some advice from Martin Saxon (both are long-time CVI users) on how to "nest" multiple RunUserInterface and QuitUserInterface functions within a succession of modal dialog boxes or pop-up panels to do some interesting things in their applications. Learning from Mr. Darguad's source code (still on his web site, I believe) I once took it that idea a step further in one of my ATE applications some years ago. That's the kind of stuff I'm hoping to learn about from others here in this forum.
But I agree with you in principal, yours is a very good question, because in an ideal world, it makes sense that we should integrate all these tasks in one development environment. But in the real world, there are decisions made by others who want it to be done differently, for various reasons. Reasons such as: the number of available licenses of Visual Studio, CVI, LabVIEW, etc. (which is related to cost for procuring and supporting them, including staffing developers behind them, etc.). The other aspect has to do with the available skill-set of the current staff on hand for these development tools (limited, because we are a start-up) and the time-frame to get things done right away using this staff (again, being a startup, it is vital for our organization that this is to be delivered ASAP). Then there is direction that came from "on high" to go down this route, even against my advice to the contrary, which I'll try to explain...
This CVI application must also gather its data from a VB & VC++ based .NET application that drives an FPGA interface board that drives our highly-reprogrammable RFIC DUT (a topic I left out in my posting since it was already into it for several paragraphs). So from the beginnning, my personal conviction was that the task I am facing should really be created in VC++ .NET, and integrated directly into our existing .NET application. That app. has already been developed/proven, that oh-by-the-way will be "shipped" with our product, so it will live a reasonably long life-cycle. But the direction given was to make it work within our various working/proven/transient LabVIEW test programs created by many of our RFIC designers for driving equipment in our test lab, which would allow it to enjoy broader use, so the thinking was.
So the need is still there to interface a CVI app to a LabVIEW app in an elegant manner. Interfacing my CVI app with our .NET app was the easy part, I got that done already, working/proven. Hard for me to believe that bridging the unmanaged Win32 world to the managed .NET world was so much easier than bridging the gap between two environments (CVI and LabVIEW) that have been developed by the same company in the same facility for over 20 years, and yet they don't have a more elegant way of interoperating, and apparently never did.
JB
03-30-2007 02:04 PM
04-02-2007 03:58 PM
04-10-2007 04:04 PM
04-11-2007 08:39 AM