Jump to content

hooovahh

Moderators
  • Content Count

    2,888
  • Joined

  • Last visited

  • Days Won

    193

Posts posted by hooovahh


  1. Your file doesn't exist, or you typed it wrong.  I just did a test where I made a batch file with ping localhost as the only thing in the file then did the same thing you did and it worked.  I'd suggest putting an output on your error, and Standard Error to see if it returns anything like file not found.  Also you may want to test small with a batch file like dir or ping.


  2. I had this discussion with a good friend of mine who is a senior developer in a texted based language.  He has 15 years of experience in real world development, has probably 10 developers under him, and he keeps up with all the latest in the tech and software development world.  He mentioned to me a few times that in his experience he sees the projects that have many many layers of abstraction, and code hiding behind code, only to find that debugging them is difficult.  And even searching for what a function is actually doing leads down many holes of things calling things.  Where the intermediate developers make a program that is straight forward, and does what it needs to. 

    His conclusion is that his years of experience of seeing when things work well and when they don't, help guide him how complex or how simple a set of code needs to be.  And when he talks about OO he very much is open to the idea that he just doesn't fully get it, but all of his experiences are summarized with "It looks great and it sounds like it solves my problems, but then in practice it falls apart" and I followed it up with a reply I've heard and that was "Well maybe you just don't fully grasp the right way to use it."  And his reply was "That's what OO experts tell me."

    When it comes to LabVIEW I feel like I have a good mix of OO and non-OO code.  Having no classes in a large project is probably a bad sign.  And having all clusters be a class, is also probably a bad sign.  Hardware abstraction, and plugin architectures is a couple places that OO just fits in really well in my mind.  Reuse code in general also works well.  Everywhere else I'm not apposed to it, but I can see some draw backs.

    • Like 2

  3. Oh for pete's sake!  I guess AppData is probably a more appropriate place to store this stuff.  The source is actually here on LAVA.  It is the full installer that I hosted somewhere else because I didn't want to store a large single EXE on LAVA, but the source seemed appropriate enough to host here.  Work hasn't pushed Windows 10 on me for my main development machine yet so I haven't tried this in that OS.


  4. No you can't do what you are asking.  There are a few things you might want to know, but none will totally fix your situation.

    Starting in LabVIEW 2017 there is a forward compatible runtime engine.  Meaning binaries build in LabVIEW 2017 can be ran in the 2018 or newer runtime engine.  When you build a EXE there is an option to force it to run in that one version of LabVIEW, or the newest one installed.  Then if you wanted to run a new version all you'd need to do is install the new RTE and it would run in that.  Obviously that is a relatively new feature and not going to be useful for you now.

    Also there is the fact that LabVIEW 2009 while not official supported in Windows 10 will most likely run just fine.  I've installed LabVIEW 7.1 in Windows 7 and had no issues, other than tracking down old drivers to support it.  So you might be able to convince your IT team that the 2009 RTE should be used.  Without the source that really is the only way to run that EXE.  The binary is compiled for that RTE and can't be recompiled for another target or platform unless you have the source.

    • Thanks 1

  5. 18 hours ago, desidude said:

    4) Recertification by points:  This is a no-brainer with a catch. I used to be involved in the community but I realized too late that for certify-by-points you also have to send emails to certification at ni dot com so that they record every event (quite ridiculous, because all events were at NI locations and sponsored by NI, including user-group meetings where they make you put your name and sign.) I had done LabVIEW presentations at local user-groups to advanced as well as new-to-labview groups,  NIweek, and local colleges/universities as a part of industry involvement in their curriculum. I realized too late that ALL of this was essentially wasted because even though I certainly had more participation points than needed, I just didn't keep a track of them and sent to NI to record!  *Poof* its all gone.

    So most of my interactions with NI in that capacity are documented somewhere.  If I presented at NI Week, it is available online.  If I attended NI Week then I have expense reports on it (and I know I attended), if I present at a user group I post my slides after the presentation, if I participate in a beta I'll remember, or even have the beta VM still on my computer.  So what I did was when my certification was about a year from expiring I just started adding up all the events and presentations I did.  Once I reached 50 points I sent an email to NI saying what I did and when and how I was up to 50.  They emailed back within a couple days saying I was then certified for another 4 years.  The one thing you might have a hard time with is remembering what user groups you attended if you aren't always a regular.


  6. 7 hours ago, Aristos Queue said:

    You people are so laid back and forgiving. I’m an editor on multiple wikis across cyberspace, and none of the others are anything less than draconian. Capitalization whatever?! 🙂

    Maybe it has something to do with the fact that we have a more graphical mindset and don't care as much as long as we can convey a thought.  Maybe because we are primarily engineers?  Or this is a wiki with a relatively small support base?  In any case thank you for your wiki contributions.

    • Like 1

  7. All very good points and good concerns.  Personally I would capitalize Boolean, but I may forget occasionally.  I would also prefer subVI as I've gotten used to the NI standard.  I can see the confusion with LabVIEW and G, and often I go back to what the community at large uses.  If I say "My programming language of choice is G" some may confuse this with GCode, or something else.  If I say LabVIEW I think that conveys what I mean to the general public more.  For this reason I default to "LabVIEW" but at times will say G.  Public opinion may change, and that may mean updating the wiki.  And if there are specifics I'd prefer separate pages for 20xx and NXG, but whatever.

    One thing you might not be aware of is that there is a place for page specific discussions on the Wiki Talk Page.  You could make an edit, but leave a comment asking for direction or leave it open to preference.

    That being said I think the opinion of most moderators on the Wiki is more that getting something which is non-perfect, is better than having nothing.  I'd encourage others to make pages and fill in what they can, even if they are unsure of how to handle some of these differences.  Things can always be cleaned up and refined later.

    • Like 1

  8. Not really.  I mean it might be possible but an easier way to handle this would be to setup your VI to run on open, and then just ask your users to double click on the VI from a shortcut somewhere like the desktop.  Then it will open that VI in LabVIEW (because that's what happens when you double click a VI file) and on open it will start running it.  You can even configure the VI to quit LabVIEW when the VI stops running or the user closes the window.  Then they wouldn't even know it is running in the IDE.

    This does however go against some standard programming practices and the better answer would involve still turning the code into an application, and figuring out what features you are trying to use that isn't available in the run-time engine.  And try to code around them.


  9. The linked article specifically states that it is for Windows and has you go through the process of creating drivers and installing them in Windows so that process isn't possible on RT.  Also NI sells PCI and USB based FPGA's that can be programmed with LabVIEW, but I assume you went with a custom chip for a reason.


  10. Pulling the VIs out of an EXE isn't the hard part.  In relatively recent versions of LabVIEW you can pull out VIs from an EXE.  I think the last version I did this on was 2015.  But the VIs are a binary blob with no block diagram, generally no front panel, but can be called as a subVI in the IDE.  And with the forward compatible run-time engine that means any LabVIEW 2017 EXE can have its VIs pulled out and ran in 2017 or newer.  I haven't tested this but I think it should work.  But as others have said, getting the source code out of an EXE is considered impossible.


  11. I don't think making an XControl transparent is difficult.  NI recommends setting the Facade VI to be "Window Runs Transparent".  Then you can color the 2D picture control to be transparent.  If the user chooses a background color other than transparent, then set the background color of the front panel, and set the Facade to not run transparent.  If that doesn't work you should be able to draw a rectangle behind the chart the color the user wants. 

    In any case congratulations, it looks like you put a lot of work into this, and I hope the market finds this valuable.  I've never tried to sell any LabVIEW toolkits but I get the impression it is a difficult market.


  12. Wow yeah whole crap congratulations.  Everything appears to be native G.  It always feels like cheating when I see stuff like this that just is some .Net wrapper under the hood but this is an XControl which I would guess is a 2D picture control.  I also like that you can see the settings update as you change them.

    That being said there are a few things I wish worked better.  XControl resizing is one that would be nice so things like Fit to Pane worked.  That Circular Chart Designer dialog can't be resized and it is actually too tall for my main monitor.  Even the Circular Chart Example VI is too large and I had to change the settings to allow to make it fit on my monitor.  Background color allowing for transparent would be nice but in most cases can be colored the same as the pane and you won't notice.  I also don't see any XControl Properties or Methods to change the UI programatically.  One easier solution for this would just be to allow to load premade CCS files with an invoke node.  Then if you want to switch to other settings like changing the description, color, style, etc.  Just load one made earlier.  That can help you avoid having to make so many properties and methods.

    I really only played around with it for a few minutes but whole crap is there a lot of settings.  I'd often try to do something to change one part of the chart and go down a rabbit hole of playing with every control to just see what it would do and how it would change it.  The help is helpful but there just was things I had a hard time trying to figure out how to adjust.

×
×
  • Create New...

Important Information

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