activeX in executable

Hi all

I'm having the problem of a working on the development computer ActiveX control and does not not in an executable file on a target computer that has not installed LabVIEW. I've seen a few posts similar to this, but I was wondering what is the best way to address the issue? For example, currently controls AX get installed when you install a 3rd party application. The .ocx files are then in the directory c:\program files corresponding. On the development computer, I was drop a container AX and then right click and choose the control. Because it appears in the list, I guess that its getting registered during the installation of the 3rd party software. I tried to install the same software 3rd party on the target but I have either a 3001 error when using the container or the 97 error when you use automation to open. What else I need other that the .ocx file to use the AXE control in an executable of labVIEW? Would it not possible to create an different LabVIEW .exe that my installer would call properly place and save this AX control, so I don't have to perform a complete installation of the 3rd party software? And if so, the live .ocx file anywhere and is there anything else I should do to use the control in an executable of labVIEW. In addition, in my .vi call this control, how can I do? ActiveX container? Open automation? And the paths on the development and the target computer must be the same? I know it's a lot of questions, so anything you could add would be useful.

Thank you

Caz

After some research, I found the problem. LabVIEW 8.6.x known issues page 118215 States question that activeX controls load in the runtime 8.6 alone and that the ICU component must also be installed. When I created the installer for my application, I had just checked the run-time engine, and by including the NOR-USI, now it seems to play nice. I never thought to check the known issues page didn't have a recent nugget of Darren (wipe the front and exhaling deeply).

Tags: NI Software

Similar Questions

  • Read a cluster from a LabVIEW Application on ActiveX

    Trying to not pull my hair.

    New user of TestStand.  We currently have a suite of applications created using LabVIEW .exe that allows the user to manually test DUT.  Try to get a proof of concept goes to show fat improvements if we TestStand resume what the user is doing.

    Rebuilt the executeables with active ActiveX and can almost get everything working the way I want it, except for every time that a type of cluster is involved.  Works cannot read or write.  I created a customized data type to match the type of cluster, but I always get an error of-17308 complain that the Variant data type does not match the variable type expected.  I can get the types of simple data (including tables) to work, but for clusters... nothing.

    Y at - it something I am doing wrong?  Is this possible?

    Dan

    I've tested this method worked.

    To sum up to pass a cluster:

    Create a VI that has a cluster as either the entry or the cluster of production you want out of the EXE.

    Inside this VI, use ActiveX to get the desired virtual Instrument (similar to what you are doing in TestStand).  Call to set the value of control (or get the value of control) on the control that you want to get or set.  You can wire the cluster directly to set the value of control (or get the value of control) in LabVIEW because it stores the clusters in the same way.

    From TestStand, call this VI.  Move in (or on) the parameter desired to get or set.

    I've attached an example that shows how to define a control in the same VI, but you should do something different where you choose your ActiveX Server rather than the LabVIEW ActiveX Server executables.

  • Workaround illegal restricted procedure

    I'm in a scenario where I need to run a trigger on - 'WE-DISPATCH-EVENT' of an ActiveX control

    Executing PL/SQL code contains keywords like next_record, validation, go_block

    The time of execution when the trigger is executed, I get an error:
    FRM-40737 illegal procedure NEXT_RECORD Trigger WE-DISPATCH_EVENT limited

    I'm on forms 6i
    Please suggest a work around...

    The best solution to this limitation is to use a Timer to run the built-ins limited. In your case, you must create a millisecond timer 1 in your Dispatch event trigger to the place where you want to run the integrated Restricted. Then, you will need to create level When-Timer-Expired (WTE) trigger shape/Module to manage the execution of your clock. For example:

    /* Sample On-Dispatch-Event trigger */
    DECLARE
       Timer_ID    TIMER;
    BEGIN
       /* Your trigger logic here... */
    
       --Point in your logic where you want to call the Next_Record built-in
       Timer_ID := Create_Timer('CALL_NEXT_RECORD',1,NO_REPEAT);
    
       /* Rest of your logic here, so long as it is not dependent on the
          execution of the Next_Record built-in.  For this, you would need
           to include this logic in the WTE trigger.  */
    END; 
    
    /* Sample When-Timer-Expired trigger */
    DECLARE
       v_Timer   VARCHAR2(30) := Get_Application_Property(TIMER_NAME);
    BEGIN
       IF ( v_Timer := 'CALL_NEXT_RECORD' ) THEN
          NEXT_RECORD;
           /* Include any logic here that was dependend on the
              execution of the Next_Record built-in. */
       END IF;
    END; 
    

    Hope this helps,
    Craig B-)

    If someone useful or appropriate, please mark accordingly.

  • ActiveX stops working when I convert my vi to an executable

    Hello

    I have an app that works very well as a vi but when I convert it to an executable file the vi that uses ActiveX to connect to a camera, the game stops working. I tried to build the vi with and without the option "enable the activex server' checked with the same results.

    I don't know I'm missing something obvious!

    quick update, looks like I've fixed this problem.

    It seems to be down to the firewall windows is blocking access to the .exe once I added the .exe to the firewall exclusion list that it worked fine.

    See you soon,.

    Stewart.

  • Client server of executable activex LabVIEW project with excel vba

    Hi all

    I submitted a ticket to support nor on this problem, but my deadline for this project is very close, so I would like to ask the community to see if someone has encountered this problem before (I hope it's ok that I'm doing this!). I did a fair amount of forum-scouring, and I didn't know this even discussed problem.

    I built a labView project which is essentially in the material data and
    preforms various visualizations and transformations on the data. A bit of the
    Screws in this project are available by VBA Excel as a Server ActiveX with LabView and
    Excel as the customer - and it works! I recently discovered I would need to do a
    executable version of my project, so I'm now trying to figure out how to do the same thing
    with my executable file as the server instead of LabView. Here's a simplified version are
    My VBA code:

    Void Button1_Click()
    Dim lvapp As MyServer.Application
    Dim vi MyServer.VirtualInstrument

    Set lvapp = CreateObject ("MyServer.Application")
        
    VI the value is lvapp. GetVIReference ("Main.vi", "", True)
        
    Sheet1.cells (1, 1) = vi. GetControlValue ("Path")
        
    lvapp. Quit smoking
    End Sub

    I replaced LabView here with the name of my server. The code
    failure of the CreateObject method with the following error:

    Run-time error '13':
    Type mismatch

    Things, I'm pretty sure I'm doing it correctly:
    -L'application is configured as an ActiveX server in the build options
    -J' ran the VI once and close/re-open it just after each build before trying the
    worksheet
    -In excel, VBA method is configured to reference the type library of the server.
    -J' have LabView itself closed when I run the .exe

    Thank you

    Alex

    My versions and such:
    Software of NEITHER: LabVIEW version 2012
    OS: Windows 7

    It's interesting - I'll have to look into the issue. In the meantime, I found a solution.

    It's quite mysterious, but it seems that all I had to do was make sure you only the type library of the server executable has been referenced in VBA (no LabView or OLE type library) and declare the variable app as object, rather than MyServerName.Application. Honestly, I have no idea why this works, but it does. Also, I learned that you need to use the executable file paths, which are a little different than the paths of project files.

    Thank you

    Alex

  • Call2 method not found (ActiveX VI method)

    I have the following problem. I have an executable Server ActiveX is enabled.

    the code below is a calling VI. the code worked correctly before. When I inserted a new node called on the block diagram, I can't see not all methods.

    I think that the image below says a lot.

    Help, please!

    Thank you

    RENN

    LV2010Sp1 32-bit

    Hi Moritz M.

    you don't know. I'm happy to post the solution.

    Normally, the ActiveX Server is registered automatically at startup of the executable.

    But since the EXE EXE of old and new has the same name, at first, I had to cancel registration of the old activeX Server (see link: http://support.microsoft.com/kb/297279) save the new one manually.

    Its NEITHER too well documented on support page.

    How can I register type libraries, ActiveX controls and ActiveX servers?

    http://digital.NI.com/public.nsf/allkb/4F811A9B23F1D46E862566F700615B7A

    I got the diagram broken in appellant VI (that I've posted before) because the activeX Server (in my case the executable file) was not registered.

    Thanks for the reply

    RENN

  • ActiveX-17502 system-level exception

    I have compilied a VI in LV2009 in an ActiveX Server. I tested the ActiveX functionality with a VI call to read a value of control and it works great. He opens the executable file using the 'opening function Automation. " uses the method 'Get a reference VI' to get the reference; then use that reference to get the value of control.

    If I try to create a reference VI of the Teststand 4.2 ActiveX COM adapter, the sequence throws an error "system level 17502 Exception." The executable opens and works once it is open, if I run it manually. The cluster 'ERROR OUT' on the front panel indicates no error.

    I have attached the LV pattern-block and the stage of TestStand screenshots in case I'm missing something. The path to the VI was copied form the LV path string is obviously correct.

    I'm baffled by this one.

    Do not create a file, this is not what this setting is. This setting is for deserialization of an object stored on the disk. You must use the default 'Create New' instead. TestStand will find your server by using the Windows registry (the operating system is really what makes this) you don't need to specify a path to your server.

    Hope this helps,

    -Doug

  • ActiveX ADODB LAST_INSERT_ID() returns zero

    Hey everybody,

    I connect to a MySQL database using Microsoft ActiveX ADODB (ADOBD.recordset) classes. This works very well for select, INSERT and UPDATE MySQL base, and I'm sure that others that I have not yet tried. The table has a unique identifier column named 'id' auto-increment, and I would like to return the last value inserted into the table. However, the execution of SELECT LAST_INSERT_ID() returns 0.

    I looked into it, and some people mentioned that the TEEN can not handle BIGINT, so I added "Option = 16384" my connection string (FLAG_NO_BIGINT) and still no luck. Others have mentioned that the AUTO_IS_NULL database option is at the origin of the questions, so I tried that too and it does not always work.

    I also tried the command 'SELECT LAST_INSERT_ID() FROM table', and which returns an array of 0s, with a length equal to the length of the table. It is closer, but because the items can be removed from the table, I can't use it for my purposes.

    Does anyone have information on this?

    On a related, but much less important topic, ADODB.recordset can execute multiple queries or commands in a single call? For example, sending multiple INSERT commands.

    Have you tried something like:

    Select max (my_id_field)
    From my_table;

    In turn mySQL supports the new standard SQL 'back' clause in inserts?

    On your related question, you don't need a recordset to send a command. Use the execute method connection when you're not going to be return data. What about queries, the answer is Yes, but with caveats.

    Mike...

  • Closing references ActiveX correctly in the Simple user interface

    Hello

    I am currently editing the user supplied with Teststand 2013 Simple interface in order to access the global variables of the station through LabVIEW.  A simple test, I'm trying to access the value of username.  When I run the VI for the first time after the opening of LabVIEW, I get no error message and the program works as required.  Stop the running VI will return no error, but when I try to run the VI and rerun the Teststand, stalls the execution sequence and I get a wait status.  I then have to close running VI by killing all threads in Teststand, I think that the PropertyObjects do not come out properly and I find the structure of the event quite confusing to deal with.

    My attempt to close the references in the while loop looks like this:

    The rest of the program is exactly as expected with Teststand 2013.

    Any input on how to close properly references ActiveX and extracting station globals in LabVIEW would be much apreciated.

    Thank you for your help,

    Christian

    Christian,

    Doug is correct if you open references in a loop, you should also be closing them in the loop. For example, this code open a reference to the engine and the Globals PropertyObject. Two of these references must be closed each time that the loop is executed with the current code.

    You might be able to improve this code is to put your username querying code elsewhere. This username appears as something that would happen only when a user connects or disconnects, then perhaps that this code could be registered as a reminder of the event UserChangedevent. Follow these steps in the VI of reminders set up event of the user interface.

    If you do not need this code to update constantly, you can put in the structure of the event time-out event in your screenshot and fix a reasonable (maybe 100 to 200 ms).

    Hope this helps and let us know if you have other questions about this!

  • Using ActiveX controls to the old user interface

    I tried to build a User Interface for TestStand 4.1.1 using LabView 8.6.1 (on Windows XP)

    However, ActiveX controls keep showing in the old non - 3d "block" style.

    This seems to be a problem when you build a new exe. If you use the included UI (Full Featured) in TestStand it appears correctly.

    I was able to replacte this problem on two other development systems (a new windows XP, LabVIEW 8.6.1 & TestStand 4.1.1 install).

    (1) take a copy of the full-functional UI of LabVIEW.

    (2) open the project file

    (3) rebuild the exe file

    It's only a problem when you use the exe file. When you run from the LabVIEW development system it looks good.

    Hi Simon,.

    For your UI to take on XP
    Theme controls, you will need to place a manifest file that specifies the activex control topics in the same
    directory as your executable file. TestStand comes with a manifest file for
    INTERFACE c# you can also use for the UI of LabVIEW. Just go to the \User Interfaces\Simple\CSharp and copy the file TestExec.exe.manifest in the directory of the LabVIEW User Interface executables.

    Note that the manifest file must have the same name as your executable file LabVIEW UI. For example, if you name your user interface, "MyCustomTSUI.exe", you will need to name the manifest file 'MyCustomTSUI.exe.manifest '.

    Please let me know if this solves your problem or if you have other questions. Thank you!

  • ActiveX controls disappear when VI is loaded in a subgroup of experts with the use of the modal to start dialog box

    Hello

    I have a secondary to a VI (VI1) in which one another VI (VI2) is charged. VI1 is used as a module for an Action step in TestStand. Vi2 has controls ActiveX as ExpressionEdit and Adobe PDF reader etc. VI1 VI2 in charge in a subgroup of experts and calls Dialog.vi Modal start. I put 'Show the front panel when it is called' true to VI1 so that the VI appears when the sequence is executed. During the execution of the sequence and when the VI begin dialog is called VI1, all controls ActiveX VI2 (loaded in the Sub-group of experts) modal disappears. Here is the screenshot of the façade of the VI1 operating sequence:

    This problem occurs in TestStand 4.2.1 TestStand 2010 and TestStand 2010 SP1 (for as far as I tested it.) May occur in older versions too). In the attached file, VI1 is 'ExprEdit Test.vi' and VI2 is 'SubpanelLoad.vi '. The sequence attached is developed in TestStand 2010 SP1.

    How can you solve this problem?

    Thank you

    Ganesh Kumar

    Hi all

    Found the solution to the question . The problem is that the front of the VI in which start Modal Dialog.vi is used should not be open before start Modal Dialog.vi is called. In the files that I have included in my previous post, .vi ExprEdit Test (does not work) had the ability to 'See the façade when it is called' enabled in the properties of VI. It was the origin of the problem. When I disabled this option, all started working well (ActiveX controls do not disappear during the execution of the sequence). I had accidentally turned off in .vi ExprEdit Test (work) that worked. A comprehensive review of the differences between the 2 screws led to find the cause of the problem.

    Thank you

    Ganesh Kumar

  • C# 2008 - unregistered control error TestStand2012 ActiveX on Win7 64 bit OS

    Hi all

    I hope someone can help with pointing me in the right direction.

    I have a c# 2008 TestStand2010 ActiveX control (on the form) application. It is originally created in Windows XP, 32 bit and it works fine.

    Now, I try to take the program to another PC with Win7 64 bit and TestStand2012.

    I recompiled already successfully the solution with TS2012 on Win7 64 bit OS and I put "Any CPU" configuration manager "x 86". But when I'm debugging or running the program, I always have an exception ' class not registered (Exception from HRESULT: 0 x 80040154 (REGDB_E_CLASSNOTREG)).

    When I remove the TestStand ActiveX control on the form, the program works very well. So I was wondering, if TestStand2012 is available for 64-bit? I have install TS2012 directly from the CD. Is there another TS 2012 special package for 64-bit? or the CD version is 32-bit and 64-bit?

    If nothing wrong with the software, I missed something in the settings of c# language? Any suggestion is appreciated.

    Thank you and have a nice day.

    0049 wrote:

    Thank you.

    I already have.

    He now works then? This should work if you have set to x 86 platform. There must be a problem with the way you set the platform. Look at the example of c# UI project. It already does. Maybe you do not run the executable right. The exe file is built in a different directory for each default platform.

    -Doug

  • Build ActiveX servers in LabVIEW

    Hello

    I'm trying to implement an ActiveX Server is the "out-of-process Server" type (which means that it is a program (.exe file) windows executable) in LabVIEW.  I have seen tons information that the way which use LabVIEW as a client ActiveX and even several examples of creating a shared library (dll) with LabVIEW that other applications can access (but are in-process servers) and some examples of LabVIEW as an activeX server, but nothing on how to create ActiveX with LabVIEW objects.  I need information on how to specify the CLSID of the COM object so that the user of the object can create an instance of it.  I also need to implement the methods that can be called using IDispatch.

    I searched all LabView day and same ordinate: Advanced Programming Techniques, second edition from Amazon.com to try to find examples.  The best information I've found is how exactly to what I'm trying to do with LabWindows.  The link to this article is here-->http://www.ni.com/white-paper/2714/en.  Is there something similar for LabVIEW?

    Everything else, I read, simply go to tools--> VI server and check the Active X.  I also found this link, but I'm looking for information much more than what is expected

    http://zone.NI.com/reference/en-XX/help/371361H-01/lvhowto/activating_lv_activex_srv/  (I couldn't find examples that this link refers to "Consult the files VBToLV.frm, VBToLV.vbp and VBToLV.vbw in labview\examples\comm for an example of calling LabVIEW as a Server ActiveX in Microsoft Visual Basic.")

    I was really hoping to find information on how to build ActiveX objects in LabVIEW and to implement a COM object as an executable file.  Is this possible in LabVIEW?

    glstill wrote:

    I was really hoping to find information on how to build ActiveX objects in LabVIEW and to implement a COM object as an executable file.  Is this possible in LabVIEW?

    I'm 99% positive, the answer is no. Historically, the level of interaction LV has had with the operating system has never been so high that he was seen with other languages, probably due to a combination of being supported on multiple platforms, a quite different programming paradigm and a relatively low interest rate charged.

    The ActiveX Server LV has, as explained in the link you gave, is a way to connect to some of the hierarchy of classes from LV itself, not to the user creates the classes.

    You have other alternatives are the construction of standard in DLLs LV functions or in .NET interop assemblies (which I suppose is better for you, if you want that managed code). I have no practical experience with either.

  • ActiveX control in CVI Edit substep

    I'm under CVI 2010 (10.0.1.419) and TestStand 2010 SP1 f1 (4.5.1.144).

    I came across a problem today and I know that I must be missing something easy. I am trying to create a step with a stage to change type. The lower level change called a CVI function to its module code. The CVI function opened a panel that contains an ActiveX control.

    When I try to use the lower level edit (by clicking the button in an instance of the step type), I got an error that the DLL cannot be loaded. Changing the setting of adapter CVI to run the steps in an external Instance of CVI let me see that ICB receives an ERROR of EXECUTION NO DEADLY that 'ActiveX controls cannot be created in a thread which the concurrency model is apartment multithreaded (MTA).

    I know that Edit substeps are supposed to use STA threads (there is a post of Doug somewhere around here... ah, here). So I did not know what went wrong. I created the simplest example I could think of nothing else than a control IE WebBrowser on a Panel in a .uir and still have the same error.

    More strange is that I got the error When you run one of the TestStand examples! I tried the example \Examples\StepTypes\CVI\HP34401a and got the same error:

    NON-FATAL RUN-TIME ERROR:   "c:\...\StepTypes\CVI\HP34401a\HP34401aStepType.c", line 356, col 5, thread id 0x00001694:   Library function error (return value == -176 [0xffffff50]). ActiveX controls cannot be created in a thread whose concurrency model is multithread apartment (MTA)
    

    There must be something I am doing wrong, or an option that is out of order. Any ideas?

    -J

    Change substeps are executed in a threaded so executed in the process. If you are running in an external CVI, then you will get a MTA thread. You probably don't want generally be run some edit sub-steps in a CVI outside themselves, that is why there is a checkbox "Always run in the process" on the CVI module specification table (I recommend to all developers step using CVI modules for substeps type use this setting for all of their sub-stages). Your original question was probably unrelated to the COM threading model I recommend that you debug and debug the process of with CVI seqedit.exe rather than your modules running in an external CVI.

    Hope this helps,

    -Doug

  • Can Excel launch an executable of Labview?

    Hi all:

    Can Excel launch an executable of Labview?

    I would like to open an Excel file, fill data in Sheet1

    and then press a button on the worksheet "Sheet1" Excel.

    By pressing this button, it will start to run an executable of Labview.

    Thank you all,.

    \\carlos in Sunnyvale, CA

    An executable of LabVIEW is an executable file like any other executable file. As long as the LabVIEW run-time engine is installed, you can call in an Excel macro using the Shell() command as calling Shell (executable).

    (EDIT: clicked Post until I had finished it)

    OR, you try to call using ActiveX with LabVIEW as an ActiveX Server?

Maybe you are looking for

  • Is received message 'repair window erroes' reliable?

    I received this message with an address of firefox that says 'erroes window repair' and 2 updates available. Big flashing messages. But I update every day so is it reliable or a scam? I think it is a scam, because it comes with the contest to enter.P

  • Windows Mail deletes any e-mail as soon as it is read and closed

    A few days ago Windows Mail suddenly started to delete all e-mails as soon as I read and closed.  He has also instantly deleted previously read all mails.  These emails are not visible in the elements deleted - they disappeared completely. This probl

  • How to restore a directory (folder) of a back-up?

    I backed up a directory year last in my external hard drive, but I can't find out how to give him a new folder. How?

  • WRT610N with HD on port USB + WD TV Live on the network

    Hello Since the WD TV Live, I can share everything and I can see it on the net. I can see on the port USB WRT610N of WD TV live HD, but I can't, I don't see the files. Is access, no username and PSW is required when trying to get into the HD media se

  • Why IE9 does font size change in Windows Mail

    After installing IE9, the font size in the text of my e-mail in Windows Mail is locked using a small font.  The police is also set by default to the "BOLD" type.  I can't change the font size or remove the type of fat.  The size is too small for me t