Jump to content

John Lokanis

Members
  • Posts

    798
  • Joined

  • Last visited

  • Days Won

    14

Everything posted by John Lokanis

  1. I don't think so. I was told that the VIs do not persist from one call to another. And are all basically reentrant so they cannot cross communicate. Some new news: LV2010 cannot call a .NET assembly created in LV2010. This is a known CAR. Might also apply to LV2009. Not sure about LV8.6 or earlier. Also, I cannot call a .NET assembly build in LV2010 from C# either. It appears that the wrapper they add to the assembly is failing to detect the existence of the run time engine. Even on my dev machine. So, if you use .NET assemblies generated by LabVIEW, do not upgrade to LV2010 until there is a fix for this. Oh, and see my bug about the build spec order here before that one bites you as well...
  2. I found a new bug in LV2010. Back in LV8.6 I reported an issue where the order of the build specifications dictated the order they would be built when doing a build all. So, If you created an EXE first, then an installer, then later added a web service and included it in the installer, the order of the build would be: Exe > installer > web service. Thus, when you make edits to the web service code and do a build all, your changes will not be picked up unless you build all twice, since the web service would be build AFTER the installer. The work-around was to drag the build specs around to rearrange them so the web service came before the installer that needed it. I reported this and said that a better fix would be for the project to detect this dependency and build the components in the right order. Well, in LV2010, not only has this not been fixed, but you can no longer drag the build specs to rearrange them and work around the bug. So, better plan your project completely before trying to build any part of it...
  3. Ok, so there is no documentation after all. At least non that NI has produced yet. But I did figure out some things. 1. The VI name and connector pane controls and indicators are used to construct the method call. 2. You can only create methods. 3. The .NET VIs run in their own application instance that has no persistence between calls. 4. Apparently, LabVIEW cannot call it's own generated .NET assemblies. This sure is annoying when testing them. I will add more info here as I figure it out so the new person does not have to...
  4. Still digging around for documentation on this. Let me know if you have does this before and have any good links to docs.
  5. I have decided to create a .NET assembly to expose an automation interface to my EXE. I dug around in the manuals and on NI.com for some info on how to do this but only managed to find instructions on how to build the assembly. I could not find anything about designing one. So, I was hoping someone on LAVA could point me in the right direction. I am thinking is it a lot like web services. Perhaps if you have done this you can confirm or deny my assumptions: 1. The assembly operates in it's own application instance. Meaning the only way to talk to the EXE from the assembly VIs is VI server. 2. The connector pane of the exported VIs is used to set the input and output parameters of the exposed .NET method 3. The VI name is used to name the method. Some questions: Can I only create methods or can I also create properties? If so, how? I'm sure I will think of a few more questions as I dig into this more. thanks for any help. -John
  6. is porting code to LV 2010. So far, so good...

  7. I would like to help. As soon as I am done with the big LV2010 upgrade here at work, I will get in touch.
  8. Now that LV2010 allows you to separate your VI source from the compiled obj code, some issues come up for distributing plug-in VIs. Currently, I use the OpenG Builder to package my plug-in VIs. (I include the entire hierarchy, namespace them so there are no conflicts and strip off diagrams) I can then call these dynamically from my EXE. But, if I choose to separate the source from the complied code, this will no longer work because the RTE cannot call a VI that has been separated. So, the solution is the OpenG Builder needs an option to recombine the source and object code when it build the output LLB file. Separating the source and object code makes a lot of sense for those of us who keep all our VIs in source control. I would prefer to apply this to all my VIs but I cannot as long as I need to build plug-in packages that are not 'compiled' in the normal sense. If you know where I should post this so it get the attention of those in charge of the OpenG builder, let me know. -John
  9. Just did one more run though of my NI Week presentation. Hope it goes well. See you there!

    1. jgcode

      jgcode

      Good luck with it, I am looking forward to it.

  10. Thanks for the tip. That did the trick. I must comment however, that the example code did not conform to good style. Wish they would clean it up sometime!
  11. Having not used graphs or charts in a very long time, I waswondering if someone could give me some tips on how to solve what is probably avery easy problem. I need a waveform chart (not graph, because I only want todisplay a certain number of recent points and will be continuously accumulatingdata) of temperature readings. Where itgets complex is I need to timestamp each reading. Also, the time between datapoints is notfixed. There is no ‘sample rate’ so t0and dt will not work for me. I need to feed this chart a starting time (timestamp) when Iinitialize the display and then at any random times later, feed it a y value andtimestamp. I expect it to plot the yvalue at the appropriate point on the chart and draw a line from the previousvalue to it. Also, if the y value is anarray, then each datepoint in the array is for a different plot, all with thesame timestamps. As the history is filled, I expect the oldest data to disappear off the left side of the chart. I also would like to set the history length wheninitializing. This sounds like a job for an X control to me, but I am notsure where to start. Anyone know of agood example to look at or have something to share? Thanks, -John
  12. I just posted an updated version for LV2009. Had to tweak some of the fixed paths in the installer batch files to deal with the different folder names. Also, took out the work around for the missing log folder. This was an issue in 8.6.1 but it was fixed in 2009. Known issues: In 2009, the service takes 2 minutes to become responsive once started. This is because I am running it as a SYSTEM service and not under a normal user. If you just start the exe as a user, it starts working immediately. No word yet from NI on why this worked find in 8.6.1. Also, the Distributed System Manager works even less well in LV2009 so I do not recommend using this tool with web services. I will post a LV2010 version sometime after NI Week. I think LV2010 will make some significant improvements to web services. -John
  13. The web services are hosted on the target machine where your app is running. We do host pages on a standard Apache web server that access the web services to get their data. I am not an expert on the html side of that but it is fairly simple to do, from what my web guy tells me. I am in the process of getting my web services to run on Win7 and Win2008server. The biggest headaches are due to the added security and changed file paths. I think this will be much easier under LabVIEW 2010, however. Looking forward to the new changes. I will try to address them in my presentation. Back to the main point of this thread, if this is your first time to NI Week, be sure to pack a fleece and long pants. While it will be +100degF outside, it will be ridiculously cold in the convention center. If you are wearing shorts and a t-shirt, you will freeze your arse off...
  14. Actually, this session is on Wednesday. I will be talking about deploying web services to a target machine that only has the RTE, how to implement a web based API for your applications and demoing some nice tools I have created for managing your LabVIEW apps remotely. Hope you can attend! Gotta go practice my presentation now. It is due to be turned in for final approval tomorrow!
  15. I'll be arriving Monday afternoon. Staying at the Hilton. Should be able to make the block party Monday evening. Don't miss my session on web services Wednesday afternoon! TS2796-SW Practical Applications of Web Services in LabVIEW I'll be at the LAVA BBQ Tuesday and the NI Party on Wednesday. Probably end up milling around the JKI booth the rest of the time, trying to absorb as much knowledge as I can...
  16. I think I have figured out how to get my LabVIEW built exe to always run as administrator (embed a custom manifest file) but now I need to run some post install batch files as administrator as well. Does anyone know how to get the LabVIEW installer to do this? I also need to mark some other batch files I install to only run as administrator. Perhaps there is a way to do this within the main batch file that I run post install. It would also be nice if the resulting installer was backward compatible with WinXP. But the Program Files (x86) thing is really getting in the way of that...
  17. Nice to see that my scroll wheel for strings idea made the cut. Too bad I need to wait two years to see it implemented. It was the first Idea I ever posted.
  18. Passed my CLD! Now to take that Adv. Arch. class before I attempt the CLA exam!

  19. Please look at this idea regarding creating sub vis from a selection: http://forums.ni.com/t5/LabVIEW-Idea-Exchange/Create-SUB-VI-from-selection-should-intelligently-inherit/idc-p/1146804#M5955 thanks! -John
  20. Every now and then, when I try to open LabVIEW 2009 SP1 while I am running Google Chrome browser, LabVIEW will crash (with a JIT debugger dialog). If I try to open it again, I get the same crash every time. If I then close Chrome and try to open LabVIEW, it works. After that, I am able to open Chrome and close and open LabVIEW without issue. I have not yet reported this to NI because I cannot duplicate it 100% of the time. Just wondering if anyone else has seen this one. thanks, -John
  21. Finally getting around to taking the CLD test tomorrow. Wish me luck!

  22. Open the build settings for your web service, go to the Advanced category and find the check box labeled 'Use LabVIEW 8.x file layout'. Make sure this is checked and then build and test again. Your problem should go away. Nope. The issue is when the web server starts for the first time, it gets stuck for 2 minutes and then finished. Once it is up and running, the web service calls all work fine. I have a request in to get to the bottom of this so I hope to have an answer soon.
  23. Wow, nobody but me uses web services? I guess my session on web services at NI Week2010 will not be that popular...
  24. Yes. Funny thing is, the native one and two button dialogs ARE reentrant. So, I was merely pointing out that difference, in case someone had a good reason to display two modal dialogs at once and tried replacing the native ones with the Three Button Dialog. Can you offer any insight into why the native ones are reentrant? And why they are not root loop safe?
×
×
  • Create New...

Important Information

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