LabView per ActiveX Interop DLL

Hi Everybody,
I am trying set up a Software called "iLab - Interactive Server" developed by the MIT (see https://wikis.mit.edu/confluence/display/ILAB2/iLab+Downloads). This Software allows to run remote Experiments (which are controlled by LabVIEW).
iLab starts and controlls the VI via the DCOM Interface of LabVIEW.
The Software is tested and should work fine, it runs on an IIS Microsoft Webserver.
All the time i am trying to run it, I get the following error (see attachement)
To Test my interface, i also run the "CallLV" from this forum: http://forums.ni.com/t5/LabVIEW/How-can-i-use-labview-tlb-to-control-Labview-from-an-external/td-p/1...
This sometimes works fine, but sometimes i also get the same error like in iLab..
I tested it with LabView 2009, 2012 and 2014!
Does someone has an idea why it doesnt work?
Thanks
Attachments:
COM.jpg ‏285 KB

Hi!
the visual studio project is fairly old (year 2003), so I would recommend to try this:
Community: Running or Calling a VI using the LabVIEW ActiveX Automation Server from C# .NET - National Instruments
https://decibel.ni.com/content/docs/DOC-25663
Please be advised that the directory seems to be hardcoded, so please extract the ZIP-file to "C:\"
Best regards,
Christoph

Similar Messages

  • LabView TEDS library into DLL or ActiveX Control so that I can use it in C or Visual Basic?

    We are developing software in LabWindows/CVI and Microsoft C. I heard that LabView can generate DLLs. Can I turn LabView TEDS library into DLL or ActiveX Control so that I can use it in C or Visual Basic development environment?

    Technically what you are proposing is possible with LabVIEW. With LabVIEW's application builder, VIs can be built into dlls. Also, LV has ActiveX hooks and so you could create a system for calling into it from CVI. However, this is not what I would recommend.
    The LabVIEW VIs have been written to a preliminary version of the IEEE specification (1451.4) that describes the TEDS data which is primarily why I'm advising you against using them. Once the IEEE spec is approved (the current timeline is currently late March), it will become public and you can write your own code according to the specification (or wait for someone else to write it). To help you get started, the spec includes flex and bison code that describes the syntax and structure of the template files
    Internally, we've written some C, C++ and Java code to the preliminary version of the spec and we've found that we can duplicate the functionality of the TEDS Library for LV in roughly 2 weeks in any other language.

  • Problems using Labview as ActiveX Server

    Hello,
           I have been having difficulty using Labview as an AcvtiveX server. I have reviewed all the postings on this subject and most are either pre Labview 8.2 and thus do not account for the changes made between 8.2 and 8.5 which broke the Activex server functions. I have looked at the recommendations for changing the to code to export (exported vi's in a DLL or Source distribution) and have tried these with no success. The closest example I have found was posted here http://forums.ni.com/ni/board/message?board.id=170&thread.id=283417 the example code they posted does ont work for me and still generates and error 3005.
          What i need is simple. I want to turn my applicaiton into a Vi server.. Expose a vi that acceses elements in the Vi server.. (controls, queues, Globals etc) that are in the Vi server context. I would then like to build a vi .. or dll that calls the 'exposed' vi in the vi server to pass data to or from the vi server. The V test.zip example file in the above indicated post is a pretty good example of this .. it just does not seem to work when i build it in 8.5. Are there any GOOD and 'current' examples of using labview as the ActiveX server (Compiled) and calling exposed vis from an external application Labivew, Visual Basic.. etc??  I am only interested in cases where Labview is the Sever. or both client and server.
           I have used a tool "ActiveXplorer" to examine the registered "exe" when the viserver is run. It always shows that there is no Type Library associated and the object is not creatable. There is a .tlb created by the project build however, where as the previous version 8.2.1 of Labview did not build that correctly. I have also tried this on 8.6 with similar error 3005 generated. sooooo what am i missing?
          Thanks
           Louis Ashford

    Mike,
           Thank you for your response to my question. The problem is that the example you site does not use the Labview vi as the Server. Excel is actually the vi server and the automation open is using and excel automation object. I am sure that Excel creates proper automation objects .. Labview however does not seem to. So while this example shows how labview can function as a client it is not an example of a compiled Labview Sever being accessed by a 'laview vi'. Possibly I am not looking at the vi that you are thinking of.
           The examples i am aware of:
                        "ActiveX Event Callback for Excel.vi... (Excel is server not Labview vi)
                        "ActiveX Event Callback for IE.vi (same Labview vi is client)
                        "Write Table to XL.vi" ( again excel is the server)
                        "3D Graph Properties - Torus.vi" (accesses an activex Control 'not' and Activex EXE)
                        "3D Lorenz Attractor Draw at Compeltion using 3D Curve.vi (Uses an activex  control not activex Exe server)
                        "3D Parametric Surface - Ribbon.vi (Uses an activex  control not activex Exe server)
                        "3D Surface Example - Fluctuating Sine Wave.vi (Uses an activex  control not activex Exe server)
                        "Excel Macro Example.vi (Uses excel as automation server..not Labview)
                        "FamilyTree.vi (uses MSComctlLib.ITreeView object not Labview as server)
                        "SlideShow.vi" (uses PowerPoint._Application not Laview as server)
          Most of the posts I have seen are for versions prior to  Labview version 8.2 (where the ActiveX server was broken) I have seen only a few posts that actually address the issue i am talking about. however thus far no real solution has been offered. I get the same results when compiling and testing this with 8.6..  as well. So have you tried this Mike? Possibly i am missing something very simple..
          The example i did find and gave the link to is a pretty simple one. This does not work on my machine at all. You can select the automation server that is registered with windows after running the server one time and this then breaks the client vi.. I have found by reselecting the GetViReference property node in the Client vi that it will the 'fix' the client vi as far as labview is concerened and it no longer shows and error. Now when you run the Client vi it will infact find the vi server and will launch it ok. However. The open automation object then hangs.. for quite some time then returns the error
    "Error -2146959355 occurred at Server execution failed
     in Client_reader.vi" Obviously the automation Exe (server) was seen because it was opened yet it did not return a valid reference so the subsequent property nodes in the client.vi will fail. Something is wrong with Labviews opening of or creating of automation objects..
              Thanks,,
                    Louis Ashford

  • LabVIEW crashes with ntdll.dll!7C911e58 as the error in debugger.

    I am running a streaming video application (VLC) in LabVIEW as an activeX control. There are 6 separate containers with different streams in each.
    Labview Crashes citing ntdll.dll!7C911e58 as the error in debugger when I try to run the VI. 
    As well, every 4th attempt to run the VI results in the BSOD.
    Does anyone know what I can do to try and fix this serious error?
    Regards,
    Sean

    Which version of LabVIEW do you have?  There wasn't a LabVIEW 7.2.  Did you mean 7.1.1?
    Did you get an error log generated?  That would be useful in diagnosing the problem.  This KB reviews its location:
    http://digital.ni.com/public.nsf/allkb/54E361E3FF477EC186256C320068184F?OpenDocument
    Trey B
    Applications Engineering
    National Instruments

  • How does labVIEW use ActiveX controls?

    How does labVIEW use activeX controls?
    I recently wrote an activeX control in VB and noticed that it would not work if the control was set so that its properties could not be set in ambient mode. This may suggest that labVIEW uses some activeX controls only in ambient mode.
    Is this the case or are there more complexities?

    Dan,
    Which version of LabVIEW do you have?
    As per the KnowledgeBase bellow, in versions of LabVIEW prior to 5.1 you would get errors accessing the ambient properties.
    ActiveX Controls in LabVIEW 5.0.1 Containers Cannot Access Ambient Property
    Do your controls use the Ambient.UserMode to determine when the control is being used in a development environment? When embedding ActiveX controls into a container on the front panel, by default, the ActiveX control generates and responds to events, i.e. it is running, even when LabVIEW is in edit mode.
    Right-click an ActiveX container and select Advanced»Design Mode from the shortcut menu to display the container
    in design mode while you edit the VI. In design mode, events are not generated and event procedures do not run. The default mode is run mode, where you interact with the object as a user would.
    Information can be found in the LabVIEW help files
    Zvezdana S.

  • Error while using LabVIEW 8.2.1 Dll from Visual C++ 6.0

    I am getting an error while using a LabVIEW 8.2.1 dll from Visual C++ 6.0 application. This is what I am doing:
    1) Created a dll using LabVIEW 8.2.1 (I used a tutorial from NI knowledge base: "Creating DLLs from 6.0i". It is a temperature conversion VI; input DegreeF and get DegreeC out). Instead of LabVIEW 6.0i, I used 8.2.1. It created the dll Convert_Temp.dll successfully.
    2) Then I created a Visual C++ 6.0 application (used a tutorial from NI knowledge base: "Calling a DLL from Microsoft Visual C++ that was Generated by LabVIEW 6i). I could build the project and create an executable application F_To_C.exe.
    3) Then copied the LabVIEW dll Convert_Temp.dll into the folder where F_To_C.exe resides. Using windows explorer, went into that folder, and executed the application.  I got the following error:
    System Error 998 while loading the LabVIEW run-time engine (C:\Program Files\National Instruments\Shared\LabVIEW Run-Time\8.2\lvrt.dll).
    Convert_Temp requires a version 8.2.1 (or compatible) LabVIEW Run-Time Engine. Please contact the vendor of Convert_Temp to correct this problem.
    I checked the folder: C:\Program Files\National Instruments\Shared\LabVIEW Run-Time\8.2\. It has the file lvrt.dll.
    So why am I getting this error?
    GKB

    sounds like you need to install the LabVIEW 8.2.1 runtime. Not the 8.2 runtime engine.
    Paul <--Always Learning!!!
    sense and simplicity.
    Browse my sample VIs?

  • Labview hangs when accessing dll

    Im accessing an active x dll using labview 8.21.   When we query the dll all parallel loops in labview hang until the dll returns.   Is there a way to get around this behaivour?

    HI,
    I do not know if this will help, but there is an issue with the Call Function Library node in LabVIEW 8.2.1 and is posted in the LabVIEW 8.2.1 Readme help here:
    If you configure a Call Library Function Node to call a LabVIEW DLL, place a checkmark in the Specify path on diagram checkbox on the Function page of the Call Library Function dialog box, and select Run in UI thread in the Thread control, LabVIEW hangs when executing the Call Library Function Node. To correct this problem, select Reentrant instead of Run in UI thread in the Thread
    control. If you configure the Call Library Function Node to call a DLL
    written in C with these same settings, LabVIEW works correctly.
    I hope this helps,
    Regards,
    Nadim
    Applications Engineering
    National Instruments

  • Using interop DLL to rename steps?

    I am using teststand 2.0
    If I rename a step in the Sequence Editor, the editor will automatically update all references to the step (in preconditions, pre/post expressions and so on) to match the new name.
    The problem:
    I am writing a program that use the TS interop dll to do some automated renaming. But if I change the step name using the interop it will only update the step name and not the references.
    Is there any clever way of doing this so I won't have to change all the preconditions and expressions manually?

    Why do you need a script task for this? You can define the sheetname at the time of data transfer itself by creating a new sheet with required name
    See this as an example
    http://visakhm.blogspot.in/2013/09/exporting-sqlserver-data-to-multiple.html
    Please Mark This As Answer if it solved your issue
    Please Vote This As Helpful if it helps to solve your issue
    Visakh
    My Wiki User Page
    My MSDN Page
    My Personal Blog
    My Facebook Page

  • Read an AutoCAD drawing In Labview using ActiveX

    I want to read an AutoCAD drawing (.dwg) in the LabVIEW using Activex
    plz send me the procedure for it & the Library files that will be required to get the objects.

    Had to change the labview background color. Here is an image of a dwg file inside the activex control.
    Attachments:
    autocad dwg document inside labview.PNG ‏113 KB

  • Calling Microsoft word speech in LabVIEW through ActiveX

    hi
    Yesterday i had posted 1 question , how to get the output of some other programme in LabVIEW. Well. i have found out the answer. This can be done by using ActiveX. For this the programme also must be ActiveX enabled.
    I wanted to use the microsoft Word Speech in labVIEW through ActiveX.Since microsoft word is also ActiveX enabled, this can be called.
    But the question is HOW????????
    Help me out of this
    Somil Gautam
    Think Weird

    If you want to give voice commands to LabVIEW, you might want to read this blog
    Now is the right time to use %^<%Y-%m-%dT%H:%M:%S%3uZ>T
    If you don't hate time zones, you're not a real programmer.
    "You are what you don't automate"
    Inplaceness is synonymous with insidiousness

  • Exporting figures to word from labview using activex??

    Does anybody know how to export figures into MS Word, XP edition from LabVIEW using activex. I am not using the report generation toolkit...dont have it....help wld be appreciated
    kuttu

    Here are some examples you can use. they all use activeX. One is even a toolkit I got from somewhere.Try these and if you have any more questions let me know.
    Joe.
    "NOTHING IS EVER EASY"
    Attachments:
    word.zip ‏1226 KB

  • 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

  • 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?

  • NVIDIA control (Shadowplay mostly) with LabVIEW via ActiveX - Does anyone have documentation?

    Hi Everyone,
    I'm looking to capture my monitor video at around 30fps. ShadowPlay works well with my graphics card, and I've found that there is an ActiveX Library on the PC. The attached screenshot shows an example code for 5 seconds of capture. 
    Shadowplay only captures one monitor but I want it to capture both, or make two videos (one for each monitor) preferably. Although a possible work around would be recording one at a time but being able to programatically change between the two. The Shadowplay library is: ShadowPlayServerLib and the NVIDIA Library is: NVI2Lib (I presume this is NVIDIA but could be wrong)
    I can't find any documentation on the activeX commands so I'm struggling to know what inputs and outputs of the property nodes should be. Does anyone have any? A search of the internet brings up my own forum post on NVIDIAs website: 
    https://forums.geforce.com/default/topic/805560/geforce-experience/shadowplay-activex-documentation-...
    Any help on the NVIDIA/ShadowPlay side of things would be great, alternatively any ideas for capturing video at 30fps (I tried to use .NET to capture the screen shots to png files but it only managed 2.5fps without saving them)
    Many thanks
    Attachments:
    NVI class.png ‏27 KB
    shadowplayActiveX.png ‏32 KB
    ShadowPlayCapture.vi ‏12 KB

    Hi Woody247,
    Here is brief overview to help using LabVIEW with ActiveX:
    http://www.ni.com/white-paper/2983/en/
    Here is an interesting example that could be useful to your application's functionality 
    https://decibel.ni.com/content/docs/DOC-41144
    Regards,
    Mark 
    Applications Engineer Intern
    National Instruments UK and Ireland

  • Controlling CANoe TestCases in LabVIEW over ActiveX

    Hi,
    I want to run CANoe TestCases in LabVIEW using ActiveX.
    Handling envVars and sysVars in CANoe was not a big deal and there are a lot of examples here.
    But handling TestCases is quite difficult. The CANoe help file shows this way in the object hierarchy:
    Application
    Configuration
    TestSetup
    TestEnvironments
    TestEnvironment
    TestModules
    TSTestModule
    TestSequence
    TestCase
    But I didn't find any way to realize it. I ended up in the following:
    IApplication3
    IConfiguration4
    ITestSetup
    ITestEnvironments
    ITestEnvironment
    ITestSetupItems
    ITestSetupItem
     ITestSetupItem is an object without any methods. I don't know how to access the TestCases without the linking objects in between.
    Greetings,
    Ludwig.
    Solved!
    Go to Solution.

    I've solved the problem with the help of Vector Support. They send me the following C# Example:
    CANoe.Application mApp = new CANoe.Application();
    CANoe.Configuration mConf = (CANoe.Configuration)mApp.Configuration;
    CANoe.TestSetup mTestSetup = (CANoe.TestSetup)mConf.TestSetup; //Test SetUp Window
    CANoe.TestEnvironments mTestEnvs = (CANoe.TestEnvironments)mTestSetup.TestEnvironments;
    CANoe.TestEnvironment mTestEnv = (CANoe.TestEnvironment)mTestEnvs[1]; // Test Environment (*.tse File)
    Console.WriteLine("Name " + mTestEnv.Name);
    CANoe.TestSetupFolders mTestSetupFolders = (CANoe.TestSetupFolders)mTestEnv.Folders;
    CANoe.TSTestModule mTSTestmodule = (CANoe.TSTestModule)mTestEnv.TestModules[1];
    Console.WriteLine("Name " + mTSTestmodule.Name);
    CANoe.TestSequence mTestSequence = (CANoe.TestSequence)mTSTestmodule.Sequence;
    Console.WriteLine("TestSequence Count " + mTestSequence.Count);
    CANoe.TestCase mTestCase = (CANoe.TestCase)mTestSequence[1];
    Console.WriteLine("Testcase Name " + mTestCase.Name);
    mTestCase.Enabled = false; // deactivate testcase - XML and structured NET module only.
    //CANoe.TestReport mTestReport =(CANoe.TestReport) mTSTestmodule.Report; // Access To report
    CANoe.Measurement mMeasurement = (CANoe.Measurement)mApp.Measurement;
    if (!mMeasurement.Running)
    mMeasurement.Start();
    mTSTestmodule.Start();
     I've realized that you can cast ActiveX object references to another child class in the following way:
    This was the correct solution and I want to share it with you. 

Maybe you are looking for

  • SpeedGrade CS6 6.04 update available

    We released 6.04 today, for further info please head over to the SpeedGrade blog: http://blogs.adobe.com/movingcolors/ 6.04 includes 3 fixes: Fixed: Rendered handles did not always correctly register in and out points Fixed: Split screen view on MacB

  • Bills Discounting Reversed

    Dear All, We have Post the bill usuage through F-33. Now suppose Customer doenot pay to the bank. How to reverse the transaction at the same time we have to book the receivable which was nullified when we have done f-36. I have the 4.6 Bills of excha

  • IOS 7 download problem

    when I try to download iOS 7, a popup stating that an "error occured" prevents me from downloading it. I have an iTouch 5

  • Please help Chaps!!! How do I refresh this?

    How do I refresh a Jtabbedpane object? I have a JList object in a class that extends JPanel and this JList object is in a JTabbedPane. How do I refresh each line of data being appended to the JLIST object!!!!

  • Garage Band 10.0.2 problem VST

    Hello there, I was surprises this morning, with the update Marverick 10.9 to have a new Garage Band. However, it's totally different from where my precious Garage Band and my VST (Miroslav Philharmonik) have disappeared, and I can't edit or access ..