Loading a CVI Panel from TestStand

I am running TestStand 2.01F1 and CVI 6.0 on Windows 2000. I have a Panel with several controls on it. Within TestStand, I made several action test steps with cvi adapter. One step loads the panel using the userinterface method LoadPanelEX. Another step displays the panel. then another step sends control to the Panel waiting for a specific Event from the panel. Once I run the sequence, it runs fine the first time and works fine. But once I run it again, it hangs on the DisplayPanel routine with the called function from the test step.
I am using the GetUserEvent function and processDrawEvents.

Hi James,
I'm not running W2000, can you try the attached file(s) to see if they work for you - it's stripped down to it's elements as much as possible.
S.
// it takes almost no time to rate an answer
Attachments:
cvi_panel_loading.zip ‏61 KB

Similar Messages

  • How to load 2 CVI panels as child window to a parent window created by VC++?

    Hello, I want to load 2 CVI panels as child window to a main window, which is created by VC++.
    the CVI panel is in a dll file(created by LabCVI). 
    the Load child panel routine is something like following,
    int __stdcall RunDLLUI (int* hParent )
    int hpanel;
    HWND hWnd;
    if ((hpanel = LoadPanelEx (0, "guidlluir.uir", PANEL, __CVIUserHInst)) < 0)
    return 0;
    // set parent
    if ( hParent != 0 )
    GetPanelAttribute (hpanel, ATTR_SYSTEM_WINDOW_HANDLE, (int *)&hWnd);
    SetParent( hWnd, (HWND)hParent);
    DisplayPanel (hpanel);
    // RunUserInterface ();
    return 1;
    The problem is, if I call  RunUserInterface (), then no window shown, it is, I think, that this routine blocks both the other panel to be created and the main window to be shown.  but if I don't call it, the 2 child windows won't response mouse event. seems no message dispatching for them.
    so how can I get what I want, thx a loooooooooooooooooooooooot.

    Hello, I want to load 2 CVI panels as child window to a main window, which is created by VC++.
    the CVI panel is in a dll file(created by LabCVI). 
    the Load child panel routine is something like following,
    int __stdcall RunDLLUI (int* hParent )
    int hpanel;
    HWND hWnd;
    if ((hpanel = LoadPanelEx (0, "guidlluir.uir", PANEL, __CVIUserHInst)) < 0)
    return 0;
    // set parent
    if ( hParent != 0 )
    GetPanelAttribute (hpanel, ATTR_SYSTEM_WINDOW_HANDLE, (int *)&hWnd);
    SetParent( hWnd, (HWND)hParent);
    DisplayPanel (hpanel);
    // RunUserInterface ();
    return 1;
    The problem is, if I call  RunUserInterface (), then no window shown, it is, I think, that this routine blocks both the other panel to be created and the main window to be shown.  but if I don't call it, the 2 child windows won't response mouse event. seems no message dispatching for them.
    so how can I get what I want, thx a loooooooooooooooooooooooot.

  • Loading ActiveX with panel after TestStand API

    Hi,
    My problem is :
    With Labwindows CVI 8.5 and API TestStand, after loading TestStand by its API, i can't load another activeX control with associate panel.
    There is an activeX library error - 143
    It seems to work when i load my activeX control before loading TestStand by its API.
    Is there a solution to perform this to load my activeX control after TestStand ?
    Thanks

    Bonjour et merci de tenter de m'aider. malheureusement je ne peux vous fournir de code mais je peux tenter de vous éclaircir les idées...
    Si l'on a un simple projet dont le but est de se connecter à TestStand et ayant une interface graphique. Il fonctionne...
    Si j'ajoute sur le panel un contrôle ActiveX, par exemple un calendar (Microsoft Date And Time Picker Control (SP6)) et que le chargement du panel a lieu APRES le lancement de l'engine TestStand, alors le projet compile mais renvoie une erreur -143. Par contre, si je charge le panel AVANT le lancement de l'engine alors cela fonctionne correctement. Cela peut alors poser problème dans le cas où l'on n'a pas le choix d'utiliser un activeX avant le lancement de TestStand ??? Et pourquoi ne peut-on pas faire autrement ?
    Je charge mon panel simplement avec un LoadPanel
    Voici comment je me connecte à TestStand :
     //Start TestStand Engine
     oleErrChk(TS_NewEngine (NULL, &gEngine));
     //Active les UIMessages
     oleErrChk(TS_EngineRegisterUIMessageCallback (gEngine, &errorInfo,(long)(&BANC_TESTSTAND_UIMessageCallback)));
     // Délais des messages
     oleErrChk(TS_EngineSetProperty (gEngine, &errorInfo,TS_EngineUIMessageMinDelay,CAVT_LONG, 0));
    Merci beaucoup

  • Can't close CVI panels in DLL-Detach when called from Teststand

    Hello,
    i've got a problem with Teststand calling a DLL produced with CVI.
    1. I use to DLL Attach and Detach calls to load or discard the panels. The attach part works fine, but when the TS sequence ends and i try to unload the module, the "DiscardPanel" function returns a error -129 "operation can only be performed in the thread it was created".
    If i call the same dll from a CVI executable, this doesn't happen.
    2. Additionally, the first time i run the sequence file the panel doesn't correctly quit and return to Teststand, so the whole thing hangs.
    Does anybody have an idea, what is going wrong?
    See attached files:
    ErrorOnDllDetach.seq --> Call DLL from TS
    \bin\usePanelsDll_dbg.exe --> Call DLL
    from CVI
    Attachments:
    NoUnloadOfDll.zip ‏326 KB

    Maik -
    After some more investigation, because of limitations in Microsoft's operating system, developers and CVI are limited in what they can do in DLLMain. Basically load and unload CVI panels in DLLMain just does not work well if the DLL is loaded and unloaded arbitrarily like it is in TestStand.
    One option is to never unload the panels and let CVI and the OS clean up the panels when the process terminates. You can do this by adding an extra reference to your DLL using LoadModule. You would basically prevent TestStand from unloading the DLL, so any dialog would stay around for as long as you like.
    The best way to have the dialog go away when TestStand is no longer using it is to associate your dial
    og lifetime with the execution that is displaying it. You load the panel either when the first call is made into the DLL or by an explicit call to a "Display" function exported from the DLL. Then have the dialog monitor for when the execution is terminated or stopped. This works because TestStand does not attempt to unload the DLL until the execution that is using it completes.
    I have attached an example DLL and sequence that does just this. It uses a default pool thread to display a panel and that thread waits for either an explicit call to a "Discard" function exported from the DLL or or if the execution stops.
    Hope this helps...
    Scott Richardson (NI)
    Scott Richardson
    National Instruments
    Attachments:
    DLLProject.zip ‏344 KB

  • CVI UI Panel updating from TestStand

    I'm experimenting with using a CVI graph strip chart in TestStand(4.0).   I'm new to threading in TestStand. I would like to do two simple things at first:
    1.Load the CVI UI graph panel
    2. Update the graph attributes.
    Attached is a solution that uses a separate thread for running the CVI GUI and the main thread for updating the title,axis names and data . For some reason, I seem have to have a generic wait to allow the separate thread to update the seqcontext (FileGlobals being updated in TS). If I don't wait, the FileGlobals have not been updated yet, so the UpdateGraph function fails.
    Is there anything besides a blanket wait statement that I can use to know when the separate thread has updated the FileGlobals so that I can continue with my UpdateGraph function? I thought about a loop/timeout function, but I thought maybe there was some other thread/synch mechanism that I missed.
    Attachments:
    CVIGraph.zip ‏1191 KB
    GraphTest.seq ‏7 KB

    Hey jsmalley,
    A Wait step is definitely a good and simple solution to your challenge, however, you could also try taking a look at some of the other TestStand Synchronization steps, which are often used when multithreading.  Documentation on these steps can be found on your machine by browsing to Start»Programs»National Instruments»TestStand»Online Help»Manuals»TestStand Reference Manual.  The documentation I'm referring to can be found in Appendix B of this document.
    Furthermore, there should be some synchronization examples found on your machine at <TestStand>\Examples\Synchronization.
    I hope this helps!
    Derrick S.
    Product Manager
    NI DIAdem
    National Instruments

  • Passing variables into CVI from TestStand.

    Is there a different way to send variables into CVI from TestStand other than the input buffer? Parsing that string is annoying and bulky. Isn't there an easier way?

    Hi,
    Here is a short cut to another example which will use the StationGlobals -
    http://exchange.ni.com/servlet/ProcessRequest?RHIVEID=101&RPAGEID=313&HOID=506500000008000000301F0000&UCATEGORY_0=_8_&UCATEGORY_S=0
    There are loads of other examples either as part of the examples provided by TestStand installation or in the Resource Library under TestStand on the NI website
    Good Luck
    Ray Farmer
    Regards
    Ray Farmer

  • Download Error - Contact customer support. Indesign wont load application have gone from the control panel. CS photoshop loads and wants a serial number - and my serial number dosent work?

    Download Error - Contact customer support. Indesign wont load application have gone from the control panel. CS photoshop loads and wants a serial number - and my serial number dosent work?

    Hello Bradley,
    sometimes the "opm.db file" is the culprit. In this case you should delete it.
    But as much as I regret it and as strange as it may seem I fear it's a challenge for Adobe's Creative Cloud Cleaner Tool.
    Sometimes - for whatever reasons - CC doesn't "want" to work. In this case you should CC completely delete and reinstall by help of Adobe Creative Cloud Cleaner Tool. (A try to uninstall by own resources is not enough!)
    I quote: ... helps resolve installation problems for Adobe Creative Cloud and Adobe Creative Suite (CS3-CS6) applications. The tool removes installation records for prerelease installations of Creative Cloud or Creative Suite applications. It does not affect existing installations of previous versions of Creative Cloud or Creative Suite applications.
    Please use: http://helpx.adobe.com/creative-suite/kb/cs5-cleaner-tool-installation-problems.html   and follow the prescribed sequence of operations
    If necessary and for further questions click through http://helpx.adobe.com/contact.html or http://helpx.adobe.com/de/contact.html and if "open" please use chat, I had the best experiences.
    Good luck!
    Hans-Günter

  • How can I view TestStands Operator Interface front panel, from a VI, while a test is taking place.

    I need to view the sequences and steps that are displayed during a test session while running TestStand. Except I would like to view this in a LabVIEW front panel

    JD,
    I'm not sure if you're asking to be able to view the actual code module's front panel (ie. VI front panel) while it's executing, or if you just want to see the steps and overall sequence in a VI front panel. If the latter is true then you can use the simple LabVIEW operator interface that ships with TestStand, as Dennis mentioned in his answer. This would indeed be a great place to start if you want to add any further functionality to the operator interface. If the former is true and you want to see the actual VI front panels of the steps as they execute, you can check that box "Show VI Front Panel" from the "Specify Module" window in TestStand.

  • Automating Xilinx JTAG Programmer from TestStand

    Hai,
    I am using TestStand versions 1.0.2 and 3.0 to test some of the processor driven electronic panels. I am trying to automate the programming of those processors on ATE with TestStand. I was able to load the Xilinx JTAG programmer(which is required) by calling .EXE file. Now I am struggling to create a set of ket board commands to start programming. how can I do this? Is the ActiceX control solution for this? can any onehelp with this please. I use Labwindows CVI with teststand.
    Thanks

    Hello James,
    Instead of the ActiveX, I tried to use the "FakeKeystroke" CVI built-in library function to automate the process.I got it working during interactive execution of function panel i.e by passing key codes for & , I got the File pull down menu of CVI function panel. But when I call the function from Teststand, it didn't worked.Can you able help me with this problem please. Is it the the proper way to use this function.
    Thanks for your responce regrading ActiveX control.

  • ITunes was unable to load data class information from Sync Services. Reconnect or try again later.

    Ever since I upgraded to iTunes 10.4 I've been getting this dreaded message on many occasions when I try to sync my iPhone 4 or iPad 2 with my Win 7 64 bit machine. "iTunes was unable to load data class information from Sync Services. Reconnect or try again later." What happens is that local content (music, videos etc) will sync properly to my iPhone, but other content (such as Outlook information, MobileMe stuff, etc) will not.
    I have uninstalled and completely purged all Apple data from my PC (including hidden files and folders under Common Files and in the Registry) and reinstalled iTunes. Yet after one or two syncs, the same problem resurfaces. The other weird part is that the Sync Services crap-out message will happen after I do a successful sync, leave the iPhone connected to the PC, and don't even touch the computer for several hours.
    I've actually developed a very tedious work around that seems to restore syncing if for a short time.
    - Undock/unconnect all Apple devices from the PC.
    - Close iTunes, MobileMe control panel, and Safari (if you have it).
    - Start Task Manager (Ctrl + Alt + Del) and shut down iTunesHelper.exe and SyncServer.exe
    - Open up a Windows Explorer window (like My Computer) and under Tools, Folder Options, View, toggle on Show Hidden Files and toggle off Hide Protected Operating System FIles
    - In WIndows Explorer, navigate to "C:\Users\<your name>\App Data\Roaming\Apple Computer". Rename the folder Sync Services to something else, like Sync Services_Old.
    - In WIndows Explorere, navigate to "C:\Program Files (x86)\Common Files\Apple\Mobile Device Support" and double-click on AppleSyncNotifier.exe.
    - Go back to your Folder Options and turn off SHow Hidden Files and toggle on Hide Protected Operationg System Files
    Now you can start up iTunes again and connect your device. It should sync properly again (at least, until it doesn't once more).
    Does anyone at Apple have any idea about this error or a solution?

    I actually spent a fair amount of time on the phone with a senior Apple tech last week. He directed me to this topic:
    http://support.apple.com/kb/HT1923?viewlocale=en_US
    It's important that you go through the steps EXACTLY as described here and in the proper order. Also make sure MobileMe control panel is uninstalled (if you have it).
    Interestingly, when I went through this procedure and then reinstalled iTunes 10.4 64-bit  (didn't do MobileMe or Safari at this stage, but QT is automatically installed) everything worked perfectly. The aforementioned error messages disappeared and all is working flawlessly, as it should.
    I hope my expereince will help! Give it a try.

  • Itunes was unable to load data class information from sync services.Reconnect and try again later.

    when I open itunes I get message " itunes was unable to load data class information from sync services. reconnect or try again later "
    I am unable to sync my ipad 2 or iphone 4 through itunes. I have tried all suggested options, removing itunes and related components from control panel + verified completely uninstalled from C program files + then reinstalling latest version of itunes (version 11.3.1.2). Also tried running itunes as administrator. Also tried reset sync history in itunes  Also tried system restore on windows 7 from earlier period.Still get the same above message.
    I run 64bit windows 7. Have recently renewed my Norton Intenet Security. Everything was OK up till then. Could this have anything to do with it.

    A quick cursory browse seems to point that the problem is on Apples end since the last update of iTunes, theres loads of forum posts about it but Apple themselves arent responding as yet other then the usual "unplug, delete sync data, reconnect or completely uninstall iTunes" spiel which doesnt work so hopefully they will fix it sooner or later

  • How can I convert a Database Handle from TestStand to LabVIEW?

    I want to use a Database Handle (already created in TestStand by an Open Database step) in a LabVIEW-VI (called from TestStand) to connect it with the "Connection Reference" input of the "Easy SQL.vi"? If I use a directly connection via the "TestStand - Get Property Value (Number).vi" I get back the error message 4101 in LabVIEW. How can I convert the Database Handle?
    Test Engineering
    digades GmbH
    www.digades.com

    The TestStand database step types use the CVI SQL Toolkit to talk to databases. The handle that you are referencing is an internal memory location and not a actual handle that you can directly use. Currently as implemented the handle that is stored in a numeric TestStand property for the connection and the SQL statement are the handle values returned from the CVI SQL Toolkit. So for the connection handle, you could call the CVI SQL Toolkit function
    DBGetConnectionAttribute (
    int Connection_Handle,
    tDBConnectionAttr Attribute,
    void *Value);
    and get the CVI CAObjHandle reference. With this you could then call the CVI ActiveX function
    CA_GetInterfaceFromObjHandle(
    CAObjHandle Object_Handle,
    const IID *Interface_Id,
    int Force_AddRef,
    void *Inte
    rface_Ptr,
    int *Did_AddRef);
    to get the actual ActiveX interface reference. This would have to be converted into a LabVIEW reference.
    You may want to consider just using LabVIEW to open a new parallel reference only using the toolkit.
    Scott Richardson
    National Instruments

  • My XP machine is unable to load iTunes 10.5.1. It gets about halfway loaded then says it can't find Bonjour.msi. However, that file is on the computer. I tried loading the Bonjour.msi from another computer but it came up with the same message.

    My XP machine is unable to load iTunes 10.5.1. It gets about halfway loaded then says it can't find Bonjour.msi. However, that file is on the computer. I tried loading the Bonjour.msi from another computer but it came up with the same message. I also tried to remove iTunes from the add/remove sector on Control Panel but it also refused for the same reason. Help, please.

    Try:                                               
    - iOS: Not responding or does not turn on           
    - Also try DFU mode after try recovery mode
    How to put iPod touch / iPhone into DFU mode « Karthik's scribblings
    - If not successful and you can't fully turn the iOS device fully off, let the battery fully drain. After charging for an least an hour try the above again.
    - Try another cable                     
    - Try on another computer                                                       
    - If still not successful that usually indicates a hardware problem and an appointment at the Genius Bar of an Apple store is in order.
    Apple Retail Store - Genius Bar
    The missing apps could have been done by setting the Restrictions that can hid those apps. If the backup was made with those retrictions set the the Restrictions are also restored.
    Thus, if you get it to work restore to factory settings/new iPod, not from backup                               
    You can redownload most iTunes purchases by:        
      Downloading past purchases from the App Store, iBookstore, and iTunes Store

  • TS3322 I synced my photos with icloud from my phone and it loaded all my photos from my computer to my phone I wanted to copy from phone to computer

    I synced my photos with icloud from my phone and it loaded all my photos from my computer to my phone I wanted to copy from phone to computer

    Hello Crosso10
    As long as you have iCloud Control Panel installed on your computer, they should show up in your Pictures folder under My Photo Stream.
    iOS: Importing personal photos and videos from iOS devices to your computer
    http://support.apple.com/kb/ht4083
    Regards,
    -Norm G.

  • CPU Load function CVI

    Is there a function for CVI for getting the CPU load and memory usage from a Real Time Controller?

    Hello -
    There's not a function available in CVI for getting this information.  However, if you have LabVIEW 2009 RT or later installed on your development computer, you should be able to install the System State Publisher to the real time target.  This will create network variables on the real time target that you can subscribe to to obtain this information.
    This component will not be available without LabVIEW RT until CVI's next major release.
    NickB
    National Instruments

Maybe you are looking for

  • Kernel panic, now external drive won't mount

    I had a kernel panic on my trusty old Powerbook G4 867MHz today. It's running 10.5.8. Everything on the computer seems to be fine after restart, but the WD MyBook 500MB that is connected directly to one of the PowerBook's USB ports now won't mount. T

  • Report output to be sent via mail

    Hi Experts, I want to send my customized ABAP report output to an email address (e.g my own email ID) as I need to send to the vendor (who doesn't have SAP access) as per the requirement. Can you please let me know is there any transaction or any oth

  • Authorization Check in Ad Hoc Query

    Hi Experts, When a user is given access to an infoset via the query user group, he/she will be able to see all infotypes that are associated with the infoset. The user will actually be able to select the fields, construct the query, and only hit the

  • Maintaining a tickets

    hi   can any one tell me details about maintaining a ticket and solving d tickets and closing d ticket if any body have tickets send me some tickets to [email protected] thanking u.......        anand.

  • Need Procedure for RG23A Part one  (standard indian localization)

    Hello Experts I am planning to prepare RG23Areport. I want to get it through Crystel Report for that I need appropriate SQL Procedure. pls help me in this Regards Sahil