Jump to content

Edicia

Members
  • Posts

    3
  • Joined

  • Last visited

LabVIEW Information

  • Version
    LabVIEW 2009
  • Since
    2009

Edicia's Achievements

Newbie

Newbie (1/14)

0

Reputation

  1. I have a C# application that allows the user to open multiple MDI windows. Each MDI window is an empty parent window for a LabVIEW DLL where the controls and front panel (form) is defined in the main VI of the LabVIEW DLL. Each MDI window opens the LabVIEW main VI on a new thread. If I open four MDI / LabVIEW windows of the same LabVIEW main VI and close them in the reverse order in which they were opened, then everything seems to shut down properly. However, if I open four MDI / LabVIEW windows of the same LabVIEW main VI and close the one that was opened first, then the first window shuts down properly, but the fourth one opened closes only the LabVIEW portion of the window (the child of the MDI) and leaves the C# MDI empty parent window still visible. The LabVIEW DLL is both reentrant (in the VI properties) and AllowMultipleInstances = TRUE (in the .ini file). So I am wondering if calling this VI in a LabVIEW DLL is truly a multiple instance (since two of my four instances were closed when I only clicked one Close box)? Or, maybe there is something more I need to do in LabVIEW to be able to run a VI in a LabVIEW DLL as a separate instance each time it is called from C#? Further info: Each MDI window is an empty parent window for a LabVIEW DLL where the controls and front panel (form) is defined in the main VI of the LabVIEW DLL. When the user closes the C# MDI parent window, I want to also close the child LabVIEW window. I have tried sending a WM_CLOSE message to the handle of the child window, but my LabVIEW DLL does not receive an “Application Instance Close?” event or a “Panel Close?” event. Is there an event that is fired by the LabVIEW VI when a C# application sends it a WM_CLOSE message? If so, what event should be handled in the VI’s event case structure? Or, if the WM_CLOSE message cannot be mapped into an event that is handled in an event case structure, how should it be handled? If there is not an event that is fired by the LabVIEW VI when a C# application sends it a WM_CLOSE message, then wh
  2. Hello, I have a C# application that allows the user to open multiple MDI windows. Each MDI window is an empty parent window for a LabVIEW DLL where the controls and front panel (form) is defined in the main VI of the LabVIEW DLL. Each MDI window opens the LabVIEW main VI on a new thread. If I open four MDI / LabVIEW windows of the same LabVIEW main VI and close them in the reverse order in which they were opened, then everything seems to shut down properly. However, if I open four MDI / LabVIEW windows of the same LabVIEW main VI and close the one that was opened first, then the first window shuts down properly, but the fourth one opened closes only the LabVIEW portion of the window (the child of the MDI) and leaves the C# MDI empty parent window still visible. The LabVIEW DLL is both reentrant (in the VI properties) and AllowMultipleInstances = TRUE (in the .ini file). So I was wondering if calling this VI in a LabVIEW DLL is truly a multiple instance (since two of my four instances were closed when I only clicked one Close box)? Or, maybe there is something more I need to do in LabVIEW to be able to run a VI in a LabVIEW DLL as a separate instance each time it is called from C#?
  3. is looking to know how the LV o/p should be, so other programs can use it as dynamically pluggable GUI

  4. (Given) I have 5 different types test rigs . 5 LabVIEW programs (VI sets) to control 5 non-identical rigs. RIG1 RIG2 RIG3 RIG4 RIG5 (Given) I have one "PARENT.EXE".; Blackbox- I am not supposed to worry what PARENT is built in. When PARENT.EXE is called, it has list of 5 rigs. Following is given requirement: If operator clicks 'RIG1', PARENT.EXE shall launch "LabVIEW deliverable1" within a chosen area. (Here, LabVIEW deliverable1's GUI shall control RIG1. PARENT.EXE shall control generic functions such as operator password) If operator clicks 'RIG2', PARENT.EXE shall launch "LabVIEW deliverable2" within a chosen area. (Here, LabVIEW deliverable2's GUI shall control RIG2. PARENT.EXE shall control generic functions such as operator password) If 2 months later group6 adds RIG6 , then "LabVIEW deliverable6" must be written such that it does not require re-write of "PARENT.EXE". What must be requirement on "LabVIEW deliverable" to be a plug-in part of above mechanism, (EXE is out of picture...since it's an independent process) Can the form be a RIG1.DLL and still be able to retain the GUI/behavior like RIG1.EXE ? Or is there something else (some kind of assembly?) (Given)PARENT.EXE (not labVIEW) is capable to support plug-n-play / dymnamic, but it needs to know what format LabVIEW deliverable will be. Thank you for help.
×
×
  • Create New...

Important Information

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