Jump to content


  • Content Count

  • Joined

  • Last visited

  • Days Won


Everything posted by Chris

  1. Hi Francois, Thanks for the detailed explanation. I added a few steps to get the Hoover effect in both boolean states, but it's still a bit confusing on what the six picture items represent. It will be so much easier doing this in your Control Generator, so I eagerly looked forward to the next revision - thanks for the help. I have (hopefully) attached what the final button looks like. Damn it - still can't attach anything - lets try again Vista1_Tick-Cross.ctl
  2. Hi Francois, First I'd like to say that the Control Generator Tool is the best thing since slice bread - it saves sooo much time - Kudos^infinity. I'm not sure though if the tool can create a VISTA1 style button with different images for the TRUE/FALSE states + keep the Hoover effect? I created a VISTA1 button using the Control Generator and then tried to add another image for the other state in the LabVIEW Control Editor, however it seemed to distort the cross image and I lost the Hoover effect. Am I just doing this wrong or should I instead use your Control.lvclass tools to do this programmatically? Chris P.S. I tried to attach the suspect control, but it kept on hanging my IE 8 interface - sorry.
  3. Hi Svendsen, We also want to try and use XQuery, to process test reports in XML format - but first we are trying to figure out how to write the contents of an XML file into SQL Server 2005 using the XML datatype. When we tried to do this a lot of the formatting characters were removed by the Server and so the file was corrputed when we read it back out. From what I understand it seems that with XQuery we can directly query the contents (TAGS) of an XML datatype column very efficiently - rather than say having to use the LIKE command when trying to find matches in strings. If we can work it out I'll let you know Chris
  4. Dear all, I thought I'd be clever and use the "new" XML datatype introduced with MSSQL Server 2005 to store the contents of some XML files (about 13kB each). However when I inserted the file contents into the database and then read them back out again, the file sized had decreased by about 30% and I could no longer read the file. However if I selected the VARCHAR(max) datatype the XML file was stored and retrieved fine. Has anyone used the XML datatype to store XML files in SQL Server 2005? I read that saving it as an XML datatype allowed the database to check for file integrity and made searching for XML data easier and faster - is this the case - if not I'll just go back to using the VARCHAR(max) datatype since I know it works? Thanks for any help - Chris.
  5. In the days of LabVIEW 5, 6 and 7 when the LabVIEW Application Builder was pretty basic I used InstallShield Express to build professional installations. However this package costs extra money and you have to learn and manage a whole new package in parallel with LabVIEW's Application Builder. I basically used the LabVIEW Application Builder to create the EXE and InstallShield Express to create things like Splash Screen, Licence Info, Shortcuts, Extra plugins etc. However it now seems that most of these features are included in the LabVIEW 2009 Application Builder and I can only assume/hope that this is going to improve and have more features in the next release. So personally I don't think it's worth going down the path of using Third Party Installers. Chris
  6. Thanks for that. So as you said if you upgrade or un-install your application the data into C:\Program Data\<company>\<Project Name> is unaffected, so I guess this directory will just keep getting bigger. Which leads me to another question, what if by some slim chance, the application you install has the same name as another application already installed on the computer - I guess it wouldn't really matter unless your Configuration file had the same name too, and that will be extremely unlikely.
  7. We've just upgraded to LabVIEW 2009 and have started receiving requests to install our applications onto VISTA and Windows7. As far as I can tell the only thing different from previous installers for Windows XP and before is where we can store our Configuration files. Uptil now we have installed them in the C:\Program Files\<application> directory, but I believe we can't or shouldn't do this anymore. My questions are: 1) Using the Get System Directory VI there is about a dozen directories listed (User Home, User Desktop.....Public Application Data etc..) I presume for Single (User) Or Multiple (Public) Users we use the Application Data directories to store our Configuration data? 2) For the Public folders why does the NI Help file say that it is readable but sometimes writable. Is it because two users could be logged in at the same time and one of them is running the application preventing the other user from writing to the Config file? 3) Assuming we can't write to files stored in the C:\Program Files\<application> directory, what happens if we want to modify the <application>.ini file that is associated with the <application>.exe file? And of course if we don't include an <application>.ini file in the installation process when the executable is run for the first time, if there is no *.ini file present, it creates it's own one, but will the OS allow this to happen? 4) We installed an application onto a VISTA machine using the "Public Application Data" system directory type, but trying to find the actual config file proved a nightmare. On my XP machine in Windows Explorer I can easily navigate to C:\Documents and Settings\All Users\Applicaiton Data\<myapp>, but in VISTA it appears to be totally hidden and access is denied even with adminstrator rights. Is this Windows7 normal security settings - sort of defeats the purpose of having human readable/editable config files if the user can actually see them to modify them. Thanks for any help you can provide - Chris.
  8. It's OK I figured it out, by looking at the latest post from Pravin http://lavag.org/topic/12237-how-to-connect-sql-server-2008-to-labview/ There was a reference to all the different types of connection strings to databases and I came across one for the ODBC Driver 3.51 that we used: Driver={MySQL ODBC 3.51 Driver};Server=localhost;Database=myDataBase; User=myUsername;Password=myPassword;Option=3; so even though my registry entry said the Driver Key value was C:\WINDOWS\System32\myodbc.dll if I used {MySQL ODBC 3.51 Driver} instead it worked. Thanks for everyone's help.
  9. Thanks for that Rolf. You would think that with such a straightforward explanation it should be easy to get working, but alas I've let you down I found the registry settings OK and tried a couple of different connection strings (see attachment) based on the keys, but none of them worked. Are the Key Names case sensitive or does the order in which you put the Key names important? Do I have to include the Driver Key Value?
  10. Firstly I tried connecting to my MySQL Database (on my local machine) called 'imt' through a System DSN that I manually created and of course it worked. I then deleted the System DSN entry and tried connecting to the 'imt' database using the connection information suggested by John (see No System DSN.jpg image) with a little bit added for the password and it just came up with the error "Data source name not found". I also tried Net=dbmslpcn and no entry for the Net variable. Could someone explain to me what I've done wrong - I'm sure it's something really simple.
  11. Thanks for these ideas. We have finally upgraded to LabVIEW 2009 so hopefully the Installer will be a lot easier and more flexible to use. I think I prefer John's idea, simply because I don't have to mess around with the registry, which is always a danger. However I am actually using the NI Connectivity Toolkit (NI-CT) and I always assumed you had to create a DSN through the ODBC driver so I could interface to the Database (either that or use the UDL file technique). Is it because you are using the ADO.NET interface you don't have to use this? I saw some tests that said the NI-IT was faster than ADO.NET as returned data queries grew larger (say a 1000 rows). Although ADO.NET doesn't use the extra ODBC layer I thought it was still slower? So my question is if I was to interface to say a MySQL database on the same machine as my LabVIEW application through the NI-CT can I just create the following ini file: Server=localhost;Database=imt;User ID=root;Connection Timeout=60;Trusted_Connection=FALSE;Net=dbmssocn; and I could just pass these values into the DB Tools Open Connection.vi and it would link to the database? I presume if there was a password then Trusted_Connection=TRUE and we would have to put a password entry (Password ID=blabla)? Also what does Net=dbmssocn mean? Thanks Chris.
  12. Hi all, Uptil now whenever I've installed a LabVIEW application onto a client's computer that uses MySQL Server, I have had to manually configure a System DSN entry so that the NI Database Connectivity Toolkit VI's can access my database. Is there a way that this can be included/configured in the LabVIEW Installer so the installation is fully automatic - in fact is it possible to do a complete installation of the MySQL Server, ODBC driver and System DSN (or UDL file) directly from the installer without any user input required? Thanks for help Chris.
  13. QUOTE (sachsm @ Jan 27 2009, 09:54 AM) I would also be very interested in any solution as well. I am trying to figure out how to analyse, in real-time using NI Vision, each captured screen from a high resolution laptop. I have just started looking at Third Party solutions that might provide a DLL/ActiveX control or something that will allow me access to the live video stream at perhaps 30fps & up to 1400x900 pixels, unless of course there is someway this can be done in NI Vision? I am already using Camtasia Studio to capture the screen and saving it as an AVI file for later processing in NI Vision, but I now need to be able to access this data in NI Vision for real-time analysis - any ideas??
  14. Hi Jan, You should be able to do 20fps and probably faster, but this figure is heavily dependent upon the following: 1) Are you displaying the captured frame in real-time on the screen? 2) What is the resolution and image type (8-bit grayscale 32-bit RGB)? 3) What video codec are you using to create the AVI file - Microsoft MPEG-4 Video Codec V2 is the best legacy codec that IMAQ can handle, but it depends if you can accept a lossy recording. 4) Use the IMAQ Grab Acquire.vi for high-speed image acquisition. 5) I am using queues to pass a single image buffer across to a processing task and it takes basically 0ms so I doubt that is you're problem, after all it is only passing a reference and not the whole image data. I have attached an example that can capture, display and record an AVI movie at around 20fps, on my P4 2.8Ghz, 1GB RAM, MS XP, 100GB H/D. I think you're slowest step will be the encoding of the AVI file. IMAQ currently only supports the old VFW legacy format and most of the codecs are awful (ie. Microsoft RLE, Indeo 5.10, MJPEG compressor etc...). I think (hope) that in the next release of the Irene's IVision toolkit their will be support for writing AVI files using the latest codecs (ie. Xvid, DivX, TSCC etc.)
  15. The new CompactDAQ series from NI looks good, but still trails the Advantech series of ADAM-4xxx modules in both cost and available unit types. However the CompactDAQ Modules of course are highly integrated into LabVIEW via DAQmx which is a big plus. So I was wondering if anyone had used the ADAM-4xxx series with the free LabVIEW Driver software provided and whether they were easy to setup and use?
  16. As I contributed a couple of pages to the book I had to purchase it and overall all it was pretty useful. What I really look for in a LabVIEW book however is the software code examples that come with the book, especially with IMAQ since their examples are very limited indeed (well compared to LabVIEW anyway). Unfortunately there was a fault with the initial print so my CD was stuffed, so I should probably hold off my comments to Amazon until I get the proper CD. It was lucky this topic came up, since I'd forgotten all about the e-mail that Chris sent me on how to get a new one. Hey Chris does the name Mike Hensley from crcpress ring a bell that's the last person I spoke to. How should I go about trying to get my replacement CD now, since I'm dying to see what all the examples are
  17. While I appreciate that this is the professional way of gracefully quitting LabVIEW, it seems to me that the Quit LabVIEW VI would act as a fail safe method of closing down ANY resources that you had forgotten to close down yourself and is so easy and convenient to use as the last task in your top level VI. It is just so annoying for the user to see LabVIEW hang in the taskbar and the only way to kill it is through the Task Manager.
  18. I too have experienced the same problem, where LabVIEW will remain in the taskbar, even though I've run the Quit LabVIEW function. I basically have to go to the Task Manager and kill the LabVIEW Process. So can anyone explain why this function doesn't seem to do it's task properly, or perhaps there is some other method where LabVIEW can be definitely shutdown and all its resources released.
  19. Hi Kennon, While we are on the topic of the new LV8 Installer, can you tell me this. If you build an application that has the LV Runtime Engine and your exe file and you install it on a computer. Then you modify your application and re-build it. When you go to install it on the computer again, will it automatically detect that the correct LV Runtime Engine is already installed and bypass that step, or will it re-install it all over again?
  20. Hi Dec, Well I'm working on some software that we want to distribute for a fairly cheap price and using a Dongle would just not be cost effective. So I am thinking of using the BlowFish Encryption algorithm VI's from Tad Taylor, to make up our own software based protection scheme. It wont be as good as a Dongle, but it's better than nothing.
  21. Hi Dec, Well it took a lot of effort to understand how the whole Sentinel Security Key thing worked and then get it interfaced with LabVIEW, but now that it's working we have had no problems. Personally I would prefer not to use a Dongle if I could avoid it, because they cost a lot (AUS$50/key), they involve some extra work to include the protection in your software and they are a hassle for users. It would have been real nice if the Sentinel Automatic Protection worked with LabVIEW - that was so easy to do, but the Integrated Protection does offer you features like setting up Demo software based on a number of trials or date limited and allows remote upgrades by emailing unlocking codes and if you set it up right it is supposed to be pretty unhackable.
  22. The Sentinel LabVIEW software support was pretty awful (in 6.3) and I doubt whether it has changed in version 7. Automatic protection did not work in version 6.3 and I suspect that is the instability problems they are talking about in version 7 also. I will email our own interface VI's (High and Low Level support) and a good manual explaining it all to your personal email address. We have written them in LabVIEW 6.1 for the Sentinel software version 6.3, but they should also be compatible with version 7. I just have to take out all our secret Write Passwords etc ;-) so it might take a day or two.
  23. Hi Jeff, I don't know about making non-rectangular buttons, but I made up a VCR control that was made up of rectangular buttons, with a little gap between each one and the background of each button image was set to transparent. There have been no problems with the user clicking on one button but activating another. (see attached to see what I mean).
  24. It would be nice if you can get the use of NI's webcast facilities. I have found them very easy to use and very reliable. It's a pity I just missed out on the MySQL presentation Maybe you will have a re-run.
  25. Hi Jack, Yes the Automatic Portection Scheme wraps the LabVIEW exe into an encrypted shell (if it worked :thumbdown: ). I agree it has limited capabilities for shutting down the program and I would definitely not use it if this could cause damage to hardware or really, really upset the user. However it does offer the following advantages: 1) You can protect your program in literally thirty seconds. 2) It offers additional DEMO features like expiration dates and times, where as the Integrated method only offers a counter. Perhaps when Version 7 comes out shortly they might have some more features for the Automatic Protection method I will try and find out. We threw Rainbow's VIs in the bin as soon as we saw them to - so many globals (couldn't find a smilie face that was vomiting). I've attached a picture of a test VI showing the Integrated Method, and once I document them a bit better anyone can have them. The way in which we use them probably needs a little refining to incorporate some of your ideas in the original post and the techniques that Rainbow suggest, but so far one of our applications (which has sold a couple of hundred licences) has had no reports of any failures.
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.