Jump to content

brian175

Members
  • Posts

    64
  • Joined

  • Last visited

Everything posted by brian175

  1. Here's a workaround for this LabVIEW "feature" (until dynamic methods can also be reentrant). Force the "Wait for notification Dynamic.vi" method to use a unique copy of the "Wait for notification reentrant.vi" by instantiating it with the create notifier. Brian AQ - Here's a definite BUG, or perhaps it is the new fast shutdown : 0. SAVE and close anything important in LV 8.2! 1. Download zip _v3 2. Open New Notifier Problem.lvproj 3. Open Wait for notification Dynamic.vi 4. Wire the "Notifier Class out" output of the call by ref nod to the Notifier Class out (delete the existing wire first) 5. Notice the broken run arrow 6. Delete the wire just created 7. Rewire the input to the output 8. Instant off, do not pass go and do not collect $200 Download File:post-987-1163800435.zip
  2. Yes and the name of that technique is dqGOOP and all of that "clutter" is taken care of with wrapper VIs. Here are some links: dqGOOP Toolkit Order Page dqGOOP Online Help Don't worry, I will be looking how to integrate dqGOOP with 8.20 as I'm sure the other GOOP framework providers are as well! FYI, be on the look out for a new* inheritance proposal for GOOP (not just dqGOOP but I believe that I have a technique to add inheritance using dqGOOP, openGOOP or the old free NIGOOP). Unfortunately, I will be out of the office for this upcoming week so I will not be able to look at 8.20 at least until the following week. *This is not the current inheritance proposal using a queue with flattened data. Brian
  3. The good news is that I been working on another inheritance proposal for dqGOOP, but the bad news is that I haven't worked on the browser. I have extended the trial period to the end of Dec 2006. I also fixed the problem that the browser calls AppExit when the trial is expired instead of Stop. (The former is used in built applications, while the later is for running in the dev environment.) The link is the same as before: DataAct Class Browser
  4. I am in the process of adding GOOP classes to the browser and haven't completed yet, so I have extended this trial period to the end of July. Just extract over the previous versions. Here's the link: DataAct Class Browser Thanks, Brian
  5. Sorry for the duplication for those that also follow info-LabVIEW I finally got around to updating the DataAct Class Browser for LabVIEW 8, and while I was at it I have added a few enhancements: - Create property and method nodes with selected attributes (LV 7.1 and greater only) - Context Help display (index seems to be off in LV 8) - Updated icons for classes - Reverse hierarchy for property and methods (selected class are now at the top) - Private and Scripting properties and methods included (LV7.1 Private and Scripting are not distinguished ..too much work) This version is only a beta release and will expire at the end of May, but I do plan on cleaning it up and releasing again before then. A few words of warning: 1) Just because you can create a private or scripting node, doesn't mean that you should use them! If you are curious, be sure to save any changes before trying. 2) If you don't want to use scripting, then don't press the "Create" button. All the scripting code is dynamically loaded so if you only want to browse the class hierarchy there is no need to worry. 3) The class hierarchy and/or properties or methods may be wrong, if you notice a mistake please send me a note 4) Since the class hierarchy didn't change much between 7.0 and 7.1 I have only included 7.1 and 8.0 5) The create uses the mouse coordinates to get the dropped node, but if you drop and move the mouse quickly, the incorrect node may be changed. If that happens, just use the Undo! 6) This version is password protected - sorry, but I don't have time to protect just the pieces Here's the link: DataAct Class Browser Brian Here's a screen shot of the new version
  6. Its done, see http://forums.lavag.org/index.php?showtopi...745entry11745
  7. I was hoping that I could just create a directory called "dqGOOP.chm" and use the existing help tags with the uncompiled help in the "dqGOOP.chm" directory, but it won't work on my Windows PC. Does anyone know if this will work on a Mac? For example, the Help path is: <helpdir>:\dqGOOP.chm and the Help tag is: dqGOOP_Help\VI_TREE\dqClass_getData.htm where "dqGOOP.chm" is a compile help file on Windows In the mean time the help is also available online at http://dataact.com/dqGOOP.htm.
  8. Hi Boris, The installer is Windows only, but dqGOOP uses the native LabVIEW queue functions so it is multi platform. The only other issue is that the help is compiled into a *.chm file so it won't be available. However, the help is just HTML and I could try and put something together that should work (I can not test). I will see if I can get something together this afternoon and post back. Here is the link to Zip archive of dqGOOP (Extract this archive into the ..\LabVIEW X.X\project directory of LabVIEW version 7.0 or greater.) Brian PS If the wizard doesn't work in LV 8, you can always use the OpenG "Rename Folder of VIs" utility to create a new class. A modified version that also copies the source directory is here.
  9. I was searching the forums and found this topic. I realize that it is old but the obvious solution isn't present so I thought I would add it just in case others are still having the same problem. The anwser is to store your custom probes in the ..\user.lib\_probes\default directory of the LabVIEW version you created the probe with. Of course you still need to "Save with options" and save it for previous versions of LabVIEW to have it available in all your LabVIEW versions. Or you could just right click in Explorer (Windows only) and select the "Save for prevous" option that will be available in the soon to be released next version of the DataAct Version Chooser.
  10. Just found the problem and corrected it, the last security fix added a query to prevent the redirect page from forwarding url's that were not listed in the products table. Thanks for pointing that out for me.
  11. Yes you should be able to, but I just checked and something isn't working. The "download" button should allow downloading of the zip and if you select the windows installer I think you need an account. I will post back when I have fixed the problem.
  12. Hey Stanislav, Did you ever see the Reese's Peanut Butter Cups commercial where someone with peanut butter bumps into another person with chocolate and they discover its a great combination together? Well you should check out my class browser at http://store.dataact.com/product_info.php?products_id=35 . Adding the ability to drop selected properties back on the diagram has been on my list of "things todo" but since the diagrams are open I'm sure it wouldn't be too difficult to merge the two? I've been pursuing a slightly different tack with the next version of the class browser, which is to add support for GOOP classes, .net and activeX. I was looking at using the ExtendedNode to implement a new property and method interface. A very preliminary version is posted here http://www.forums.dataact.com/viewtopic.php?t=54 (sorry I think these diagrams are still locked and it only supports LV 7.1). Anyway nice tool! :thumbup: Brian
  13. I was at the National Instruments Technical Symposium that was in town a couple of weeks ago and was able to talk to one of the LabVIEW developers that was present. I was asking about the XNode technology and he confirms what Rolf states, the scripting and XNode now have to be activated with the new license manager. However, according to this developer, this is only true on the Windows platform and the old ini keys will still work on the Mac and Linux OS. That could explain why there seemed to be some conflicting reports earlier in this thread. I'm on Windows so I can't confirm this. Brian
  14. Hi Chuck, I haven't used TestStand so someone else will have to help with that. The problem with some of NI's toolkits is that the installer will only allow it to be installed once. This is a real pain, so if the toolkit doesn't allow multiple installations you will have to install to the earlier version and then manually copy to the newer. So your order will look like this: LV 6.1 >> Toolkits(CD) >> Mass Compile >> LV 7.1 >> Toolkits(CD or manual copy) >> Mass Compile I know for sure that the Internet Toolkit will only install once and that you will need to manually copy to install in the second time. Since you are starting out fresh you could install LV 6.1 and then make a copy of the LabVIEW 6.1 directory. Next install the toolkits you want to the original LV directory and then compare it against the copy of the virgin LabIVEW install. The difference would be the files to copy to the new LV install. Don't forget to mass compile, many of NI's toolkits are created in older versions of LV and are not recompiled for the newer versions. If you don't have the ability to compare directories, then be sure to check these for the Internet Toolkit: ...\LabVIEW 6.1\vi.lib\addons\internet <=copy entire directory ...\LabVIEW 6.1\examples\internet <=copy entire directory ...\LabVIEW 6.1\help\internet.hlp ...\LabVIEW 6.1\help\internet.txt ...\LabVIEW 6.1\project\internet <=copy entire directory ...\LabVIEW 6.1\project\internet.txt ...\LabVIEW 6.1\www <=copy entire directory And since you now have multiple version of LabVIEW you may want to try the DataAct Version Chooser for LabVIEW. Good luck, Brian
  15. I attended a NIWeek presentation on "Deployment Techniques for LabVIEW Applications" given by Kennon Cotton where he described that the LabVIEW runtime engine doesn't have to be installed to work. In his example, he showed how to include the necessary files on a CD and run an application right from the CD. Jack Hamilton has posted a very similar presentation here on LAVA Runtimeless Installer and LabVIEW applications. The files that need to be included depend on the functionality of your program so you may need to use a little trial and error to determine which files you need. You could do a fresh install of the DataAct Version Chooser and use the files that get installed as your starting point. If it turns out that you need the full install, which may be the case if your application needs to be an ActiveX server, then you could also try this: Do not include the runtime installer in your application's installer Use the registry check mentioned earlier in this thread to determine if the runtime engine is installed If it is not installed, download the installer (either from NI's website or yours) Install the RTE This can all be done from within your NSIS script. I hope that this helps, Brian
  16. Hello, I have been using NSIS for my products and have done exactly what you are trying to for the DataAct Version Chooser. Here is the code that I use to determine if the runtime engine is required: In this case you add all of the runtime files in a Section (Sec05 in my case) and it is automatically selected if not already installed. For the DataAct Version Chooser I don't install the full runtime engine, only the minimun files required for DVC so I can use the same check for uninstalling the runtime engine. Depending on wether you are installing the full runtime engine or not, you may need to write an entry to the uninstall registry key to keep track of wether or not the runtime engine was already installed. NSIS is very powerful, it's great to hear of others using it for LabVIEW applications. Brian
  17. I have an application that is available for free called DataAct Class Browser for LabVIEW that uses the technique I described. The full source is included which also includes some other examples for the tree control such as using the tree symbols. Sorry it took so long, but better late than never.
  18. I made my deadline! There is a zip version available for download and yes this release is FREE. The "Download Now" button will allow immediate download of the file without having to set up an account. But if you have an extra minute or two (or if you want to get product updates) please set up an account. As a little incentive to those that go through the trouble of creating an account I have enabled a coupon "LAVA50" (no quotes) that can be entered for 50% off of DataAct Version Chooser. This coupon will expire on October 5th 2005. Have a great weekend, Brian
  19. I was wondering why I was getting hits. :thumbup: Yes I have been busy, but not busy enough to meet my 9/30 available date (at least not yet). I am planning on working on completing the release this afternoon and will post back when it is ready. The delay is because I am using a beta version of another Toolkit that I have been working on and need to protect it. FYI, the DataAct Class Browser doesn't use any scripting. I may have used a little scripting to get all the information, but it has all been compiled and stored in a file. The browser just reads the data from the file. This is necessary in order to show what is different between versions and with and with out scripting enabled.
  20. Hello, Does anyone know if the information stored in the context help can be accessed directly or from with in LabVIEW as a string? I want the context help that gets displayed for the LabVIEW property nodes. For example if you create a property node and select the VI Class, the first property is AutoLog.Path and if you hoover above it, the context help describes the AutoLog.Path for the VI Class. Thanks, Brian
  21. The attached VI contains these VIs from the XNode llb which could be helpful figuring out the coordinate system: C:\Program Files\National Instruments\LabVIEW 7.1\vi.lib\Utility\XNodeSupport.llb\XRect16To32.vi C:\Program Files\National Instruments\LabVIEW 7.1\vi.lib\Utility\XNodeSupport.llb\XRect32To16.vi C:\Program Files\National Instruments\LabVIEW 7.1\vi.lib\Utility\XNodeSupport.llb\XPoint32To16.vi C:\Program Files\National Instruments\LabVIEW 7.1\vi.lib\Utility\XNodeSupport.llb\XPoint16To32.vi Download File:post-987-1123171014.vi Brian
  22. Here's another correction I found, it is in the Details section of the first XNodes section: I believe that you do need to make the XNodes reentrant in the VI Properties Exectution Category. See what happens if you place the Merge Errors XNode on a diagram and add another input. Now place a second one on the same diagram, and the first one breaks. (Best seen with ExternalNodeDebugging=True). Now change the Merge Errors XNode to reentrant and everything works. I have been experimenting with trying to make the Merge Errors XNode growable. Is there a way to keep the XNode from growing in the horizontal direction? If I reset the bounds it doesn't seem to work once I stretch in the horizontal direction? Any ideas. Brian
  23. CTRL-Z has another curious artifact in that it leaves void terminals if extra terminals were added. To see, right click and select "Add Item" a couple of times and then do a CTRL-Z. Move the wiring tool to the Merge Errors and you will see the now deleted terminals, but if you try and wire to them you get a broken wire and a void as the sink. This can be "fixed" by double clicking on the Merge Errors XNode. Which brings me to another question, where is the double click event? Have I missed it in your docs? If not, the Storage VIs use the double click event to launch the configuration windows so it must be there somewhere. Brian
  24. I think that this is an impressive piece of work! I took a look at the example and found one minor correction and I also have a suggestion on how to make the creation of the scripted code a little simpler. First, the case for the PropTypes mod=0 was a "2" in the case which was preventing the terminals from changing to an array of errors if needed. To fix, just change the case "2" to a "0". Here is a screen shot of the code generated from a modified version of your original sample. The idea is to only script the pieces that need to be changed and use a regular SubVI for the rest. Just look at the mod=1 case and see how much less scripting is required. Download File:post-987-1123096042.zip Same as Adam's example, rename with ";D..." and _MergeErrors.vi must be in the same directory as the xnode Thank you Adam for sharing your discoveries. Brian
  25. I found the answer, which was to use scripting to create what I needed for me. There is a SubVI reference type which gets wired to the VI object class input.
×
×
  • Create New...

Important Information

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