Event in ActiveX or dll when call it in TestStand

Hi
I have a problem with ActiveX or dll build in event when call it in TestStand.
I have a VC++ code in which there is a Com port event and I deal with it in the code, then I build a dll an export some interface functions, the event and event handler is unknow from the outside, but I want to use TestStand to call this dll and I do not know whether the event can load to memory correctly and monitor the event during the whole process. In every TestStand step, is TestStand free the step content when this step is finished? or it is always residing in the memory.
I consider to build it as a dll or an ActiveX
*The best Chinese farmer*

I'm not familiar with ActiveX. But I found the turtorial on ni.com, hope it's useful:
http://zone.ni.com/devzone/cda/tut/p/id/2984
There are some links about the problem you mentioned:
http://forums.ni.com/ni/board/message?board.id=330​&message.id=2388&requireLogin=False
http://forums.ni.com/ni/board/message?board.id=330​&message.id=4215&requireLogin=False

Similar Messages

  • Is it possible to step into a CVI dll when called by TestStand?

    As the question says: "Is it possible to step into a CVI dll when called by TestStand?"
    I am sure Ray F. may have a few tricks up his sleeves...  Hope you see this post, Ray!
    I compiled a dll using CVI.  The dll is called as a test by TestStand.
    I do have an "exe" version of the code that I use for debug with a testbed, but the behaviour is not the same as testing the actual target while running TestStand.  My goal is to get as close as possible to the real events.
    Thanks,
    JLV

    Sorry about that,
    There are two ways as I was saying:
    1. You can configure the CVI adapter to Execute Steps in a External Instance of CVI (requires CVI 6.0 or greater).
    Only go to Configure->Adapters and select the LabWindows CVI adapter and click on configure and select the corresponding option.
    After that set a break point in the step that you want to debug.
    An external instance of CVI will be launched where you can set break points and step into the code.
    2. From CVI Specifying an external process:
    In CVI go to Run Specify External Process and enter the seqEdit.exe as the program name (you have to browse to the location <TestStand>\Bin\SeqEdit.exe).
    As the argument you enter the name of the sequence file you want to debug.
    Now just select Run->Debug SeqEdit.Exe
    The Sequence Edtior will be launched and you can set break point in your CVI code and step into it when the step is executed.
    Check the Using LabWindows/CVI with TestStand reference manual for more information.
    I hope it helps you to get started.
    Regards.

  • ACCESS_VIOLATION at AdobeOwl.dll when call Indesign com interface from windows service

    ACCESS_VIOLATION at AdobeOwl.dll when call Indesign CS3 COM interface from windows service application.
    Does anyone know how to workaround this issue ?

    As AdobeOwl.dll file is missing or corrupted, you need to get a new dll file. Here are the steps to replace setup.dll file
    Step 1. You can download missing AdobeOwl.dll here:
    http://dllcentral.com/AdobeOwl.dll/1.0.92/download/
    Step 2. Paste this file into your system32 or SyWOW64 folder.
    Step 3. Navigate to your System32(32Bit OS) or SyWOW64(64Bit OS) Folder.
    Note: The location of System32 and SyWOW64 is
    C:Windows\System32 (If you are using 32Bit Windows)
    C:\Windows\SysWOW64 (if you are using 64Bit Windows)
    Step 4. Paste the AdobeOwl.dll file into this folder.
    Step 5. Try to run it. It might work now. If not, restart your computer to restore it effectively.

  • MSS - Business Event Details - Error Unexpected Exception when Calling RFC

    Dear Experts,
    Manager is getting the Error "Unexpected Exception when Calling RFC from Profile Application 'Business Event' when he tries to get the Training history of ONE employee in MSS. However, he is getting the details for the other employees of his department.
    Any inputs on this?
    Thank you.

    I believe it is our custom iView that is incorrect.

  • An error when calling DAQmx from TestStand

    Hi,
    I get very mystic error when calling DAQmx Create Channel (Digital input) and DAQmx Read (Digital Bool 1Line 1Point) vis. Difficulty is that it does not occur every time. It is random. Any ideas what might cause this error? I uninstalled Traditional DAQ drives because they are not in use but it does not help.
    Please, see attachment.
    BR,
    Jick
    Attachments:
    daqerror.PNG ‏80 KB

    Here is some additional information. See attachments.
    I can not get that error using MAX or looping it only. There is something else outside which causes the error. It can not be Traditional DAQ because I uninstalled it. These vis are running in a loop during the test in the batchmodel.
    BR,
    Jick
    Attachments:
    daqerror2.PNG ‏33 KB
    daqerror3.PNG ‏15 KB

  • EXEcutable only starting DLL when calling a popup before.

    Hello,
    1. I have created a DLL in Labview 8.2 with one VI/function.
    2. Then i call this DLL/function in a new VI
    3. Then i created an EXE-file of this VI (which calls a DLL)
    Attached a screenshot of the code.
    As you can see it contains a sequence-structure where in the first part i open a message-popup and in the second-part i call the DLL.
    When i run it like this then it works without problems.
    The funny thing is:
    When i remove the message-popup and create a new EXE-file and run it then nothing happens!
    Only the Run-arrow changes to running-mode (and stays there until i close it with taskmanager) but the outputs dont-change (they stay "0").
    (The VI in the DLL that i call is very simple. The Inputvalue "11" is added and multiplied. This two results are returned. So nothing special.)
    Whats wrong here? Seems like Labview can´t make the DLL-call starting in the second exe-file (without an popup before).
    Is this a kind of a bug?
    Thanks for your help and ideas
    Attachments:
    screen.jpg ‏26 KB

    Hmm, i´m getting a red error-message after cklicking on "install LabVIEW 8.2.1 now." in your link.
    Whats going wrong here?
    --> See attached screenshot
    Attachments:
    error.jpg ‏54 KB

  • How to get parameter information on DLL function call (CVI) in TestStand?

    Hi,
     I wrote a simple Instrument Driver in CVI, and it has 3 parameters Voltage, Current, Channel.
    I made a DLL in order to call this function in TestStand as an action.
    That works fine, the only problem I have is that it shows my function as DC_Conf (arg1, arg2, arg 3) and I only get the type information like double double int.
    I do not get the parameter names Voltage, Current, Channel...
    How can I get this information to be displayed in TestStand so I know which parameter arg 1-3 is Voltage,Current,Channel in case I forgot?
    or 
    Is there a way to display the help text of the driver in TestStand?
    I tried clicking on the (?) button next to the function call but it did not do anything...
    My TestStand is version 4.1
    Thanks...Ness

    Ness,
    When TestStand populates the parameter information, it does so by looking at the dll's type library.  CVI automatically creates a type library for a dll based on the function's signature, which can include the parameter names.  However, if the function prototype does not contain variable names, then CVI cannot include names in the type library.
    You can define your own type library to directly control the information available to TestStand from your dll.  If you want to define your own type library, you can do so using a .fp file.  This will allow you to use complex data types (such as structs), and to rename your parameters.
    Here's a KnowlegeBase describing the process: Embedding Type Libraries in a LabWindows/CVI DLL for use in TestStand
    Either solution proposed here will work, and they each have tradeoffs:
    You can definte the variable names in the function prototype.  This keeps the functions self-documenting, and is the easiest solution.
    You can create a .fp file and define your own type library.  This allows you the most control over exactly what you will see in TestStand, but requires you to create a new file, and to keep that new file up to date if you make any changes to your source code.
    Message Edited by Josh W. on 12-11-2009 01:08 PM
    Josh W.
    Certified TestStand Architect
    Formerly blue

  • CVI crashes when calling function from external DLL

    I'm calling a CVI library from Test Stand 4.1.  In that CVI library I load an external DLL (using LoadLibrary) and create a few function pointers (using GetProcAddress).  The DLL loads successfully, and I get addresses for all of the imported functions.  
    However, when I one of the functions is called CVI crashes (Test Stand says it lost the ActiveX connection to CVI) when executing in an external CVI instance.  If executed in the Test Stand process I get a system level exception.
    If I step through the code in CVI, it hangs after trying to step into or over the call to the function pointer from the external DLL.
    I am able to call the functions in a small test project I created in CVI, however when integrating it into an existing test library and calling it through Test Stand it fails.
    Any ideas on how to go about debugging this issue?

    Have you tried calling into the dll that CVI calls directly from TestStand?  I am curious to know if this also crashes.
    I am also curious to know if there are any path references in the dll that is called by the CVI program.  If so are they relative, or absolute paths?
    I ask because one of the possibilities is that relative paths are being used to specify a path from the location of the code that is called, and they are not working because the current working directory is being specified by TestStand, and the paths are not relative to the working directory given by TestStand.
    Jensen
    National Instruments
    Applications Engineer

  • I get error 998 when calling a LabVIEW buildt DLL from MSVC++

    I created a DLL in LV 6.0.2. This DLL contains 39 VIs and controls. 13 of the VIs are exported, the others are subVIs, which one of them is a dynamic VI.
    I do not have all connectors used by defining the VI prototype in the build file for the application builder.
    Using this DLL I get four effects:
    From LV 6.0.2 FDS all works fine until I quit LV immediatly after the application VI stoppes. Then LV wants to save some of the VIs of the DLL.
    If I do the same but close the VI before I quit LV one want save anything.
    After Building an exe from the application VI and running the exe all works fine. The VI will only stop and if I close or quit noone wants to save something.
    Then I built an application with M
    SVC++ 6.0 using this DLL. There will be no errors or warnings during the build. If I start the application i get an error message dialog with the number 998 stating "system error loading LV Runtime engine. My application needs a Version 6.0 or compatible Runtime-engine". The path to teh Runtime-engine is given in the dialog and the lvrt.dll there has version 6.0.2.
    Does someone run on such a problem?
    Has someone a solution to this?
    Waldemar
    Using 7.1.1, 8.5.1, 8.6.1, 2009 on XP and RT
    Don't forget to give Kudos to good answers and/or questions

    Waldemar,
    I. LabVIEW wanting to save VIs
    The DLL created is just a group of VIs, not actually compiled DLL code. When the subVIs are called, they might be cached from the disk copy, not the one in the DLL. LabVIEW then loads the separate copy of that subVI. It will then ask if you want to save changes because there were value changes when it was run (this makes since) or it is in LabVIEW 6.0 version and has not been mass compiled for LabVIEW 6.0.2. When it is compiled to an exe, the search path for the subVIs goes through the executable and not the LabVIEW development environment. Also, saving VIs is not an option in an executable so the save dialog does not pop up.
    II. MSVC++ error
    This is actually a Microsoft issue. It has something to do with static and
    dynamic linking of the MFC DLL. Our R&D engineers have verified this with projects created with no LabVIEW code at all (that is why we believe it to be solely a Microsoft issue). There are three options at this time:
    1. Link with the DLL form of MFC.
    2. Do not link with the .lib from the LV DLL, instead use LoadLibrary and GetProcAddress to dynamically load the DLL and call the function.
    3. Use the VC delayload feature to make the LV DLL not get loaded until the first call is made into it. See VC help on "delayload" for information on setting this up.
    Randy Hoskin
    Applications Engineer
    National Instruments
    http://www.ni.com/ask

  • Array limitation when calling VB Dll?

    Today I encountered a problem when calling a Visual Basic DLL in Labview 8.2.1
    I had to pass a 3D Array, with one dimension exceeding 30 000. around that array size I ended up with error -2146828282 when calling the Dll.
    The dll was working fine for weeks. So, is there any limition to the array size, which could cause the error?

    Hi sthu,
    Having 30,000 elements in one dimension of an array should not cause any problems by itself.  The maximum number of elements per dimension in an array is (2^31) – 1 as described in the LabVIEW Help for Grouping Data with Arrays and Clusters.  However, this is also dependent upon the memory available in your computer.  If there is not enough memory available in RAM, you might receive an error when passing the array to the DLL.
    I have included a couple links to pages that discuss LabVIEW memory usage and managing large data sets in LabVIEW.  These might help get your application up and running with the larger array sizes.
    VI Memory Usage
    Managing Large Data Sets in LabVIEW
    Donovan

  • Error 998 when calling dll

    Hello,
    I'm using LabView9 32-bit on 64-bit machine (Windows7) and I'm trying to call some functions from an external dll (32-bit).
    When configuring the call-library-function-node to use this dll I get an error message saying:
     "error loading (filename of dll)". Invalid access to memory location.
    The message is in German as is my operating system.
    Now I wrote a little test app in VC++ which directly called the dll. Everything worked fine.
    Next I wrote a wrapper-dll to call the original dll's functions and used that with my test app in VC++. Also no problems.
    Finally I configured LabView to call the wrapper-dll and got no error message at least right after configuration.
    But when I run the VI and debug the wrapper-dll I get an error 998 when the wrapper-dll tries to load the original dll.
    According to Microsoft's description of system error codes this is ERROR_NOACCESS and means exactly "Invalid access to memory location".
    So for some strange reason LabView isn't able to load that dll, which is obviously no problem for a C++ app.
    Any help on this would be very much appreciated since my project is strongly dependent on getting this to work.
    Best regards,
    \Ulli.

    Hi Ronnie,
    unfortunately there is no direct solution for this issue so far. Both sides, the dll-vendor (texas instruments) and ni are aware of it, with ni (in my opinion) at least trying to solve it.
    The cause seems to be some encryption stuff on the vendor side (they use an usb dongle). Is something similar involved with your problem?
    My current workaround is to have an external wrapper app written in c++ accessing the said dll. To this wrapper I communicate via socket to realise the function calls.
    This is quite annoying since it's a bit of work to do and you definitely loose performance. But so far no one was able (and in case of Texas Instruments even not willing) to help on that problem.
    And again: for me this issue applies only for the said configuration:
    Windows7, 64-bit,
    LV2009, 32-bit (I cannot use 64 bit because of some 32-bit-only toolboxes)
    the dll is available both in 32 and 64 bit...
    I'm still exited, if there will be an official solution,
    good luck,
    \Ulli.

  • Error when calling  external  DLL  function.

    When calling a function in Oracle, the error happens
    ORA-28575: '... error RPC connection to external procedures'
    code:
    create or replace library LibFunctions as 'c:\MyDLL.dll';
    grant all PRIVILEGES on LibFunctions to public;
    create or replace
    FUNCTION Max(num1 in number, num2 in number) RETURN number IS
    EXTERNAL LIBRARY LibFunctions
    NAME "Max"
    LANGUAGE C;
    grant all PRIVILEGES on Max to public;
    obs. Dll was created in Pascal.
    What can this error?
    tks,
    Mauricio
    Edited by: user13794390 on 19/01/2011 06:29

    It's been a while since I used extproc. Anyway, it listener.ora make sure extproc is added. I'll assume you are on Unix:
    (SID_DESC =
    (SID_NAME = PLSExtProc)
    (ENVS = "EXTPROC_DLLS=ANY,LD_LIBRARY_PATH=proper-directory-list")
    (ORACLE_HOME = path-to-oracle-home)
    (PROGRAM = extproc)
    ) SY.

  • LV 6.0.2: an App-built dll gives a runtime error when called by C

    I want to use Labview 6.0.2 VIs as DLL's in a Borland C++ Project.
    Starting with the simple I have made a VI that returns a constant int32 then built a dll with the Application Builder and put the dll and include file in a BC++ project directory. Compile and link seems to run well. But when excuting the call to the LV fuction gives Fatal Error: labview.lib was not called from a Labview process.
    It seems this question was posted before, but answer didn't help me, Sorry.
    7.1 -- 2013
    CLA

    Hi Gabriela -
    This question is answered in the KB article entitled : "LabVIEW.LIB Error When Calling a DLL Built with LabVIEW"
    The link for this document is -> http://ae.natinst.com/operations/ae/public.nsf/fca7838c4500dc10862567a100753500/a4c3aef93240280a86256931006fb66c?OpenDocument
    Or you can go directly to www.ni.com/support and search for this document and others to help.
    The reason for this is that the old labview.lib does not know how to correctly locate the LabVIEW Run-Time Engine when called.
    From the document I posted ->
    Your dll is most likely making a call If you want to call a Windows DLL or CIN built with a version of cintools before LabVIEW 6.0, you must relink the DLL with the labview.lib from 6.0. If you call an old DLL or CIN in your LabVIE
    W DLL, you receive the aforementioned error and the application terminates, because the old labview.lib does not know how to correctly locate the LabVIEW Run-Time Engine when called in this situation.
    Good luck-
    ben schulte
    national instruments

  • Crash "DAbort 0x37C03D in MemoryMana​ger.cpp" when calling DLL with "Call Library Function Node"

    Hi all,
    I would like to work with a LabVIEW program that I did not programm by myself.
    In this programm an external DLL needs to be called. in the Momente this dll ist called with the "Call Library Dunction Node" LabVIEW crashes with this Error Message:
    DAbort 0x37C03D in MemoryManager.cpp
    Attached is the entire Log.
    The programm runs on the computer of the original programer.
    I have never handeled with DLLs or something like that before, so I have absolutely no idea how to rsolve this problem.
    Thanks for your help!
    Attachments:
    lvlog.txt ‏2 KB

    A DLL can be compiled by different compilers. By "generic" C DLL, i refer to ANSI C (so no C++, no Borland C or something else).
    My question is raised as parameters, esp. arrays and strings, can lead to this behavior when used in the wrong way (including "Calling Convention").
    Also, interfacing with the LV memory manager can lead to crashes like this, but this wouldn't be a "generic" DLL as it binds to LV (due to LV API calls).
    Without a better knowledge on the DLL and its functions, there is not much we can help you with.
    Where does the DLL come from?
    Norbert
    CEO: What exactly is stopping us from doing this?
    Expert: Geometry
    Marketing Manager: Just ignore it.

  • Call ActiveX (OCX, DLL) in Adobe JavaScript

      Hi,
        I want to create a new instance for custom ActiveX (OCX, DLL) in JavaScript for Adobe, how can I do it?
        Calling functions CreateObject("MyOCX.document") or ActiveXObject("MyOCX.document") does not work.
    Thanks in advance,
    Zbigniew

    Ok, thank you.
      Is it possible to call an external program from custom menu item?

Maybe you are looking for

  • External hard drive will not format

    I have a 500gb mybook external hard drive and for the first year that i have had it there have bee no problems. but after doing a software update and restarting my computer i was greeted with a message giving me the options to ignore or initialize. i

  • How to use FaceTime Between my Mac and my daugher's iPod Touch 4G? It is registered under may Apple ID.

    My daugher has an IpodTouch 4G, registered under my Apple ID since a user must be an adult.  How can we log her in to Facetime?  Any help would be greatly appreciated! I have a brand new MacBook Pro and we'd like to use Facetime when I'm out of town.

  • Portal extension plugin for JDeveloper release 10.1.3

    Metalink Note:356550.1 says 'The expected time of arrival is second quarter 2006' [for portal extension plugin for JDeveloper release 10.1.3]. When will this be available for customer use? We notice it can already be downloaded from an internal Oracl

  • How to change the current item background color

    I m working in forms 6.0. I want to mak the background color of the current item (whatsoever the item name is ) as 'yellow'. How can i do that.How can i accoplish that? I've tried set_item_property(:system.cursor_item,background_color,'yellow'); in P

  • Redondear con SQL

    Colegas, Cuál es la función para Redondear en SAP con SQL?? Saludos!!