Jump to content

bmoyer

Members
  • Posts

    207
  • Joined

  • Last visited

  • Days Won

    7

Posts posted by bmoyer

  1. I'm wondering if others see a similar behavior (described below) and if it's the Messenger Library, LabVIEW, or if it's related to a possibly slow PC (my IT department is extremely overly security cautious).

    I have a project that has many Actors (currently about 80) and I want to change some of them to re-entrant.  When I change from NR to Shared clone reentrant execution (in VI Properties), afterwards it takes anywhere from 30 seconds to over a minute to save.  Is this expected? 

    I've also noticed other slowdowns in the project (Find Project Items) that can take a long time to respond where the cursor blinks from a arrow cursor to a waiting cursor for about 30 seconds during which I can't select or do anything in LabVIEW.

     

    Thanks,

    Bruce

  2. 1 hour ago, drjdpowell said:

    I'm working in 2017 and building EXEs, so it can't be a fundamental problem.   Have you created any custom Async Actions?  And what version of Messenger Library are you running?

    1.8.3.82.  I'm able to create an exe from the Messenger Library Demo 2.lvproj using Top Level.lvclass:ActorNR.vi but when I try building my program (without the steps below) I get the error.

    Here's the steps I tried (to get it to build and run correctly):

    1. I uninstalled and reinstalled the Messenger library in VIPM but still same error.
    2. "Use Fast File Format" checked...I was able to build the exe but when I run the exe it states "LabVIEW:  Resource not found.  An error occurred loading VI 'Actor type2.lvclass: Get Dynamic Launch Shell Reference.vi'.  LabVIEW load error code 3: Could not load front panel."  Then the exe crashes.
    3. Checked "Disconnect type definitions", unchecked all "Remove unused...", the exe works now!  (the culprit to step 2 was the "Modify project library file after removing unused members).

    Strange build quirks/confusing settings in Build Properties was the culprit.

    Thanks for your help!

    Bruce

  3. Same here.  On another note, I just started working with it (in LV2017 32-bit) and I'm having an issue with building the exe.  

    The source works fine but when I build I get this build error:

    "A VI broke during the build process from being saved without a block diagram. Either open the build specification to include the block diagram of that VI or enable debugging to include the block diagrams of all VIs in the build. Report this error to National Instruments technical support."

    C:\Program Files (x86)\National Instruments\LabVIEW 2017\vi.lib\drjdpowell\Messenging\Action MSG\Async Execute Core.vi

    Any ideas?  I've tried to include the block diagram of this VI and my Actor VIs in the build and also tried creating a debug executable but neither worked. 

    So far I've really enjoyed using the Messenger library and hope to use it in many applications (if I can get past making an exe).

     

    Thanks,

    Bruce

  4. The people who set up the NI network license server have to set up permissions for particular computers to get licenses.  It's not an "everybody who wants a license can get one" type of system.  Everytime I have a new computer I have to have my IT set up the server to allow it to grant licenses to my new computer.

     

    Your screen shot seems different than what you're describing however.  People who install LabVIEW on a computer should be able to use LabVIEW in evaluation mode for a short period of time (can't remember if it's 30 days or something shorter).

    • Like 1
  5. Hi, I'm fairly new to the JKI SMO framework and I have been looking at many examples online about how to use the framework (the HAL Webinar was very helpful) and I think I understand most of what is being presented but I'm having trouble making the next step of actually implementing it into my applications.

     

    At a basic level I'm having difficulty with launching the splash screen SMO.  When I launch a splash screen using the created TestLauncher.vi it launches without difficulty, but when I try to create the Splash Screen SMO from another SMO, it gets stuck in the SMO.lvclass:Start.vi.  Particularly, the subVI StartProcesses.vi.  It's waiting in the Event structure for an event never seems to happen.

     

    Any ideas as to what I'm doing wrong?

     

    Thanks,

    Bruce

  6. That's discouraging, I was planning on using user32.dll. We'll see how that goes.

    Here's the VIs I was using.  Hopefully it is helpful.  The idea was to get the screenshot of the top most window or VI and to save it to a file.

    Here's the .NET solution to take an screenshot of a VI.  You'll find that there are other VIs on Lava G that are similar, I just formatted the .NET calls to suit my individual needs (it also uses an OpenG VI).

    Simulate keyboard.vi

    Save Active Window Image to File.vi

    Screenshot with Options (.NET).vi

    File Dialog with Overwrite Rename Cancel if exists.vi

  7. Hey, look on the bright side.  At least they were courteous enough to put the SPAM posts in the LAVA Lounge!   :)  (or at least most of them)

  8. Note:  Please use the LAVA Forums PM (Personal Message) system for any inquiries.

     

    Desired Experience:

     

    • Test-related Manufacturing Engineering of IR Cameras including: Troubleshooting, Sustaining Engineering, Root Cause Analysis, New Test Introduction, Test-data Storage and Retrieval, Interfacing between R&D and Manufacturing.
    • Bachelor's degree in electrical engineering, computer science, or similar discipline required; Master's preferred
    • Experience with electronic manufacturing processes and automated test systems.
    • Significant experience implementing complex test and development procedures with at least one of the following: LabVIEW (preferred), Visual Basic, or C++.
    • Familiar with commercial electro-optical measurement / test equipment. Able to read and understand printed circuit board schematics, firmware code and optical specifications. 
    • Demonstrated capabilities in failure analysis and troubleshooting electronic circuits especially those used for thermal control. 
    • Ability to write and present status and test data reports to internal and external customers. 
    • Experience with ERP and document control system interfacing: SAP and/or Agile are a big plus. 
    • Experience in a cleanroom environment preferred since about 50% of time could be spent in cleanrooms. 
    • Must be able to communicate well with both manufacturing and R&D personnel.

    • Education Bachelor's degree in electrical engineering, computer science, or similar discipline required; Master's preferred


    Yrs. of Experience Minimum of 6 -10 years electronics industry experience
    Industry Experience Electronics, Semi-Conductor, Optics, Aerospace, etc; preferably camera electronics
    Skill sets Programming: LabVIEW (preferred), Visual Basic, or C++ ; SPC; Failure Analysis; Electronics Troubleshooting
    Candidate must be a US Citizen or Green Card Holder

     

     

    Company Background:
    Sensors Unlimited, a UTC Aerospace Systems company is the leading developer and manufacturer of shortwave infrared (SWIR) one and two dimension focal plane arrays and cameras. Our products have diverse applications in telecommunications, process/quality control, fiber optics inspection and military imaging industries. For additional information on our business, please visit our website: www.sensorsinc.com 

     

    At UTC Aerospace Systems, we take great pride in creating career opportunities for our employees, and we provide them with the tools, training and support they need to achieve their goals.

     

    UTC Aerospace Systems is one of the world's largest suppliers of technologically advanced aerospace and defense products. We design, manufacture and service systems and components and provide integrated solutions for commercial, regional, business and military aircraft, helicopters and other platforms. We are also a major supplier to international space programs.

    In 2012, UTC Aerospace Systems was formed by combining two industry leaders, Hamilton Sundstrand and Goodrich, creating an organization with key positions on a wide range of aircraft flying today and substantial content on various UAVs, satellites and ground and naval vehicles.


    United Technologies Corporation is An Equal Opportunity/Affirmative Action Employer.

     

     

    Note:  Please use the LAVA Forums PM (Personal Message) system for any inquiries.

  9. The only way I've been able to do this is by cheating.  I would have a horizontal splitter with only the tabs in the top pane, and the contents of the tabs in the lower pane.  Then when you change the value in the top tab control it changes the value in the bottom tab control.  Then when the bottom tab control changes value, I also fit the appropriate control to the pane.  This gives the illusion of a single tab that fits to the pane but really it is two tabs.

     

    This technique falls apart if you try to have more complicated controls then just a single graph, or table in each tab.  It is still do-able but I've found my self performing manual resizing of controls if the pane is resized. 

     

    Attached is a quick demo that uses a graph, a single column listbox and a table.

     

    Thanks!  Your workaround is quite sneaky into fooling the user that the tab panes are actually being displayed.  I didn't realize you could get this effect by having multiple controls on top of eachother and using that method.

     

    Highest recommendations for checking out XTab by Saphir, available for download through the LabVIEW Tools Network using VIPM.

     

    * It handles resizing of tab contents no prob, since the tab contents are just a VI

    * You can add/remove pages programmatically

    * You can re-order and even pop out tabs into new windows (à la Chrome browser)

    * The toolkit is free

     

    Here's a screencast that shows XTab in action: http://www.dailymotion.com/video/xmtmvf_topaze-tab-navigation_tech#.Ua4DsGRgZyE

    More info on the community: https://decibel.ni.com/content/docs/DOC-21668

    I've downloaded this toolkit and will give it a whirl.

     

    Thanks!  (I guess hijacking this thread was a good idea after all!)

    Bruce

  10. Slightly high-jacking this topic, re-sizing items in a tab control in a way that is similar to the resizing of panes is a feature I've been looking for for a while.  To give you an example, for many of my GUIs I have a graph in a tab control, and have the raw data table in another tab.  If tab controls could resize their contents like a pane, my graph and table could automatically re-size with my window (I would put the tab control in a pane and set it to Fit Control to Pane.  For this reason I've put off converting many of my GUIs to being resizable using splitter bars.

     

    Any ideas as to how I could implement something that could achieve similar results?

     

    Thanks,

    Bruce

  11. Ok, so I think I have this working. At least the part of dynamically updating the installer message to reflect the version of the EXE we just built and are packaging. I also am updating the installer target folder to reflect the EXE version. This way you get a new folder every time you build the installer. So, no more clobbering the previous build output. Now I need to rename the EXE target folder based on the version. This will be harder since I will need to point the installer to the new folder each time. For now, this seems to work well. Let me know what you think.

    attachicon.gifProject Version Demo.zip

    -John

    This is a very useful ability and will hopefully be very useful for creating my installers that have less items to update for each version.

     

    Word of caution:  I tried integrating this into an existing project where there are multiple exe's in the project and it took the version of the first exe in my project (which was not the one that I was building).  I haven't looked into how to resolve this issue yet but thanks for the headstart! 

  12. Unlock removes this extra step but again will simply overwrite the INI during the install (which is where this topic came from in the first place)

    The installer doesn't put the ini into the [Public App Data]<Company Name><Application Name> folder, it just creates the folder and unlocks it.  If the folder already exists, then nothing happens and your custom ini file remains intact.  The default ini that is with the exe is overwritten, but since the ini already exists in the App Data folder, the ini with the exe is not used.

×
×
  • Create New...

Important Information

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