NI TestStand

cancel
Showing results for 
Search instead for 
Did you mean: 

Passing a sequenceContext to a LabVIEW DLL

    Hello,

I have been having a difficult time passing a TestStand sequenceContext to a LabVIEW DLL. In the LabVIEW DLL, I have tried to set the sequencecontext as both a IDispatch and a LabVIEW Automation Refnum using the "C Calling Convention". On the Test Stand side, I have tried using the TS Object and the sequencecontext as a TS::SequenceContext passing a a pointer and a reference. I have also tried to pass it as an ActiveX object as an ActiveXAutomationIDispatch type and as a reference and as a pointer. Everytime I pass the argument to the DLL, I get an error "-17311; Could not accept the parameters passed in." for the sequenceContext. There are not any good examples in the Test Stand directory and the NI site doesn't have any either. Can someone help me?

Thanks!
0 Kudos
Message 1 of 5
(2,997 Views)
I do nothing but call VIs made into dlls. In the build spec, the sequence context is defined as IDispatch Pointer and in TestStand, I pass it ThisContext as the expression. I also use Standard Calling Conventions when I define the VI prototype.
0 Kudos
Message 2 of 5
(2,990 Views)
    Ok,

I understand I need to identify it as an IDispatch in LabVIEW but in Test Stand, do I pass the sequence as the following:

Category ->  object
Type ->       ActiveX IDispatch Pointer
Pass ->       By Value

Thanks for your help.

Michael Froehlich
0 Kudos
Message 3 of 5
(2,986 Views)

Yes. Here's what it looks like in TestStand v2. It appears to work the same in 3.x.

Message Edited by Dennis Knutson on 12-12-2006 06:54 AM

0 Kudos
Message 4 of 5
(2,969 Views)
    Thanks so much. All works well now.

Regards,

Michael Froehlich
WinSoft Corp
0 Kudos
Message 5 of 5
(2,958 Views)