Step to rename a DLL library

I am trying to use on LabVIEW-RT some examples which are calling a DLL library. But the library has a file name greater than 8 characters and for this reason I can't download it on the target system which supports only 8.3 filename.
First, I have renamed the DLL to use a 8.3 filename.
Second, I have open all the vi and sub-vi to define the new DLL path. But when I try to download the vi to the target, I still have a "load failed" error with the original name of the DLL.
What is missing ?

In fact, it is examples to use a third-party controller. This controller has a VISA driver, a DLL to interface the VISA driver and some LabVIEW examples to use it on LabVIEW.
I have solved the name problem, but I have still the load error (now with the good DLL name) :
"Failed to load shared library pipx40.dll: pipx40_error_message on RT target device"
where pipx40.dll is the name of the library and pipx40_error_message is the function called by the VI that I am trying to download.
I don't know why this load fails :
- Does LabVIEW not find the library on my host system ?
- Should the library be already on the target system, and in this case where ?
- Other reasons ?
I have tried to use 2 LabVIEW examples using DLL : hostnames.vi and Pl
ay Sound.vi .
When I try to download these 2 examples on my target system, I have the same type of error, but with hostnames.vi, the letter after the function name is "C" instead of "D".
What does this letter mean ?
Regards
Hubert Robitaille

Similar Messages

  • How do I rename the iphoto library on one computer before importing it to another location with other iphoto libraries?

    How do I rename the iphoto library on one computer before importing it to another location with other iphoto libraries?

    How do I rename the iphoto library on one computer before importing it to another location with other iphoto libraries?
    Quit iPhoto.
    Select the Library in the Finder, click the name,  and edit the name like for any file.

  • How do i rename an iPhoto library.  while on iPhoto, if i click File, I dont' find Get Info

    how do i rename an iPhoto library.  while on iPhoto, if i click File, I dont' find Get Info

    Select the iPhoto Libraryin your Pictures Folder. Then go command-i or File -> Get Info.

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

  • How to load DLL library on Labview?

    Hi
    I have an application that is working well in Visual C++ 2012. I would like to load the dll library on labview and to execute the code on labview. I have only the DLL file, the working application and the help file. Is it possible to realise this task on labview using Call Library Function Node.
    I have par example the following code in .cpp file:
    void CMTBClientUsingCOMDlg:nBnClickedConnect()
    // TODO: Add your control notification handler code here
    try
    // login to MTB, using english language
    m_MTBConnection->Login(("en"), &m_ID);
    // get MTB root (forcing an internal QueryInterface() on IMTBRoot!)
    m_Root = (IUnknown*)(m_MTBConnection->GetRoot((BSTR)m_ID));
    // ask root to return the number of devices
    int count = m_Root->GetDeviceCount();
    // list all devices
    for (int i=0; i < count; i++)
    _bstr_t name = ((IMTBIdentPtr)m_Root->GetDevice(i))->GetName();
    m_ComboDevices.AddString(name);
    if( m_ComboDevices.GetCount() > 0)
    m_ComboDevices.SetCurSel(0);
    OnCbnSelchangeDevices();
    m_BtnConnect.EnableWindow(false);
    m_BtnDisconnect.EnableWindow(true);
    catch(_com_error e)
    // connection close
    OnBnClickedDisconnect();
    DisplayError(&e);
    How to execute this code on labview?
    Best regards

    Hi
    I have attached the help file describing the dll library (MTBApi.dll). My working program made on Visual C++ Dot Net is very big and therefore I can’t attach it.
    In my header file I import at the beginning the dll library on this way:
     #import "MTBApi.tlb" named_guids
    using namespace MTBApi;
    Than I have a class:
    class CMTBClientUsingCOMDlg : public CDialogEx
    public:
    CMTBClientUsingCOMDlg(CWnd* pParent = NULL); // standard constructor
    ~CMTBClientUsingCOMDlg(); // standard destructor
    enum { IDD = IDD_MTBCLIENTUSINGCOM_DIALOG };
    protected:
    virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
    protected:
    HICON m_hIcon;
    IMTBConnectionPtr m_MTBConnection;
    IMTBRootPtr m_Root; 
    CComBSTR m_ID; 
    IMTBChangerPtr m_Changer; 
    IMTBDevicePtr m_Device;
    DECLARE_MESSAGE_MAP()
    public:
    afx_msg void OnBnClickedConnect();
    CButton m_BtnConnect;
    In my .cpp file I have:
    CMTBClientUsingCOMDlg::CMTBClientUsingCOMDlg(CWnd* pParent /*=NULL*/)
    : CDialogEx(CMTBClientUsingCOMDlg::IDD, pParent)
    m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);
    CoInitialize(NULL);
    try
    // create an instance of the connection class which can connect to the server
    m_MTBConnection = IMTBConnectionPtr(CLSID_MTBConnection);
    catch(_com_error e)
    CMTBClientUsingCOMDlg::~CMTBClientUsingCOMDlg()
    void CMTBClientUsingCOMDlg:isplayError(_com_error* e)
    void CMTBClientUsingCOMDlg:oDataExchange(CDataExchange* pDX)
    CDialogEx:oDataExchange(pDX);
    DDX_Control(pDX, IDC_CONNECT, m_BtnConnect);
    BEGIN_MESSAGE_MAP(CMTBClientUsingCOMDlg, CDialogEx)
    ON_BN_CLICKED(IDC_CONNECT, &CMTBClientUsingCOMDlg:nBnClickedConnect)
    END_MESSAGE_MAP()
    BOOL CMTBClientUsingCOMDlg:nInitDialog()
    CDialogEx:nInitDialog();
    void CMTBClientUsingCOMDlg:nPaint()
    void CMTBClientUsingCOMDlg:nBnClickedConnect()
    try
    // login to MTB, using english language
    m_MTBConnection->Login(("en"), &m_ID);
    // get MTB root (forcing an internal QueryInterface() on IMTBRoot!)
    m_Root = (IUnknown*)(m_MTBConnection->GetRoot((BSTR)m_ID));
    // ask root to return the number of devices
    int count = m_Root->GetDeviceCount();
    // list all devices
    for (int i=0; i < count; i++)
    _bstr_t name = ((IMTBIdentPtr)m_Root->GetDevice(i))->GetName();
    catch(_com_error e)
    // connection close
    My question is how to start this code in labview. How to write the function in labview, par example this function:
    m_MTBConnection->Login(("en"), &m_ID);
    Best regards
    Attachments:
    MTBApi.zip ‏1935 KB

  • Legal use of Skype API (Skype4COM.dll library) in ...

    Please answer my Question: is it legal (due to Skype licence, and restrictions) to use Skype API (Skype4COM.dll library) for C# with our own, commercial software - dedicated to personal communication for elderly people?
    Best
    PawelMarek

    Hi, to know more about Skype API, I suggest that you raise this matter to Skype Developer through this link: http://devforum.skype.com/ or you may simply post this query through the said link.
    Hope this helps.
    Julian

  • Calling dll-library using Oracle Express Language

    I call my dll-library from Express Language 6.32, but it can't locate my library function.
    How can I create a dll-library, suitable for Express.
    btw, creating dll I used EXTCALL.c example and I have done all in such a way as in this example. -- but... :(
    Please give me advice,
    Thanks for listening.

    tbd wrote:
    Hi rkpat,
          You might check-out this thread on building WIN32 DLLs - expecially the bit re: "mangles names" under the paragraph titled "C Language Source File".  My recollection is that 'extern "C"' directive in the header file for the DLL solved the name-mangling problem, but it's been a few years!
    Cheers!
    Message Edited by tbd on 03-01-2007 11:19 PM
    tbd is right. You have to first disable name mangling as it creates all kind of troubles. Other issues might be that your Visual Studio 2003 or .Net edition links in dynamic runtime libraries that are not standard available on every Windows PC so that you need to redistribute the according runtime library installer together with your app for the DLL to be even loadable.
    Rolf Kalbermatter
    Rolf Kalbermatter
    CIT Engineering Netherlands
    a division of Test & Measurement Solutions

  • Need Step-by-Step Instructions for Moving Aperture Library to New iMac

    I've been using Aperture on an old MacBook Pro and am totally out of memory on it (I have less than 4GB free out of 465 GB).  I'm needing to move my Aperture library over to a newly purchased iMac.
    I have already installed Aperture on the new iMac and have updated the version to 3.5.1.  Aperture on my old MacBook Pro is version 3.4.5.  Will this difference in versions be a problem as I move the library over?
    On the MacBook Pro, I use a referenced library, housing all of my masters on an external drive.  I had to do this because of insufficient memory/storage capacity. 
    I do not have any vaults. 
    While I had been backing up to an old TimeMachine, I ran into problems with it a few months back (would spin and spin and spin and never complete a backup) and stopped attempting to back up to it.  We have purchased a new TimeMachine for use with the new iMac, but have not had our AV guys out to the house to connect it to an otherwise overly complicated whole-house AV system.  So, I'm afraid TimeMachine is not the useful mechanism in transferring the library to the new computer.
    The thunderbolt connection evidently will not work with the old MacBook Pro, so this isn't the transfer mechanism either.
    Please tell me in very simple steps how to move my library over to the new computer.  Please!  I have read through the Aperture users manual and do not see this topic addressed directly, though it is vaguely mentioned within the discussion on vaults.  I have searched this community and do not find a simple enough explanation.
    Do I need to run out and get another external drive and set up a vault to do the transfer?  But, would that even work with the referenced library?  There is no way I can convert to a managed library on the MacBook Pro, as I am out of space.
    Please help!  I have tons of photo projects that I was wanting to complete for the holidays gift-giving, but I'm at a standstill until I can get up and running on the new computer.
    Many thanks for your feedback

    If you cannot connect the old mac via thunderbolt or firewire in target mode, an external drive - large enough to hold the library plus some additional free space - would really be the best option for the transfer. I would not use the network to copy a referenced library. You do not need to create a vault.
    Connect the drive to the old Mac.
    Make sure the external drive is formatted for Mac - MacOS X Extended (Journaled).
    Set the "Ignore Ownership on this volume" flag on the external drive.
    Copy the Aperture library over to the external drive by dragging it in the Finder.
    Now double-click it to open it in Aperture.
    To move all references images to the external drive select all images in Aperture in the Photos view and use the command "File > Relocate Originals" and select a folder on your external drive as the destination.
    Once the library and the referenced files are safely on your external drive, I'd run a "Repair" using the First Aid Tools: See this Manual page:  Repairing and Rebuilding Your Aperture Library: Aperture 3 User Manual
    Test the library on the new drive and check, if everything transferred safely.
    Now dismount the drive and connect it to your new mac.
    Copy the library to your new Mac by dragging it in the Finder from the drive to a folder on your new mac.
    Now double-click it to open it in Aperture. Aperture will now upgrade it to version 3.5.
    Use the command "File > Relocate Originals" to move the originals where you want them.
    Regards
    Léonie

  • I was unable to establish a serial communication using a DLL library file

    i had designed a VI application in Labview7.1, now i had upgraded Labview to 8.5 but my application is not responding. The design includes
    Application: I am trying to access a third party controller, through serial communication(RS232 Cable). I am configuring the serial port using a third party DLL library file using call library function block. but i cannot get the starting reciever response.

    hi santosh,
                       i cant get u, How do i check whether the dll is activex dll or not. else i do have an activex dll. Mouse, keyboard are USB connected. no other serial communication is connected to it. I am geting 2 errors when i tried to register the file
                         1. DLL server point not found          --    sometimes
                         2. The module was not found        -- sometimes
                  One more thing is i am able to get the reciever status for the first time but was unable to connect for the consequtive bit/byte loadings. to the third party controller connected at the other end.

  • Is it possible to rename an event library?

    Friends,
    I want to rename my event library on my drive.  How do I do it?  When I try to do so through the finder window, the original name keeps popping up.
    It's not a huge deal, but . . .
    Thanks!
    Steve

    Not really. The application is looking for a specific filepath. If the filepath to the media isn't there, it will lose connection with it.
    Same thing happens in most editing applications. Change the filepath and the media is lost. There is no reconnect function in FCP to point to the new path however.

  • How to terminate VB process that calls VI Dll Library when application closed

    I have simple VB application to call VI DLL library. The problem is the VB executable file will reside in processes list even close the VB application. Looks like VI DLL does not free from memory when VB application unloaded. Did I miss something to terminate or unload VI DLL in VB program or VI program?

    Well, I'm afraid we're down to good old-fashioned debugging tricks - something is happening that the OS doesn't want to kill. You can try to comment out sections of the VI (new feature in LV 8.2!) to see when it starts to work, or review the code looking for things like event handlers, callbacks, mutexes, open file handles, etc. It's hard to say what going wrong at this level. Also if you are calling out to 3rd party code (Call Library Node, ActiveX, .NET), make sure that it isn't creating such items and holding onto them.
    General rules of thumb...
    1. If you don't have a shutdown VI, or some sort of reference close VI, each VI you call from outside (DLL function) must exist with nothing left in LabVIEW - for example, no registered event handlers, no open file handles, etc. Just like camping, "leave it like you found it".
    2. If you do have such a shutdown, ensure that everything is indeed being shutdown correctly.
    Sorry I can't be more specific.
    Brian Tyler
    http://detritus.blogs.com/lycangeek

  • How do I reference a class in a .dll library?

    How do I reference a class in a .dll library?  The following code extracts the contents of a ListView after a line is MouseDoubleClick:
        static public void GetListViewValues(object sender, List<string> liststListViewValues)
          ListViewItem lvi = sender as ListViewItem;
          ListViewTabs obj = lvi.DataContext as ListViewTabs;
          liststListViewValues.Add(obj.tabNumber);
          liststListViewValues.Add(obj.tabDetails);
        public class ListViewTabs
          public string tabNumber { get; set; }
          public string tabDetails { get; set; }
    I want to move this code (not the class) into a library .dll.  The .dll is generic ... could be called by any namespace.  It needs to know about the ListViewTabs class in this example.
    bhs67

    >>How do I reference a class in a .dll library?
    You add a reference to the .dll (https://msdn.microsoft.com/en-us/library/wkze6zky.aspx?f=255&MSPPError=-2147217396) and add a using statement for the namespace
    in which the class is defined at the top of the code file in which you want to use the class:
    using YourNameSpace;
    >>I want to move this code (not the class) into a .dll.
    The method must be put into some class. You could create a class in the class library and put the method in there:
    namespace YourNameSpace
    public class YourClass
    static public void GetListViewValues(object sender, List<string> liststListViewValues)
    ListViewItem lvi = sender as ListViewItem;
    ListViewTabs obj = lvi.DataContext as ListViewTabs;
    liststListViewValues.Add(obj.tabNumber);
    liststListViewValues.Add(obj.tabDetails);
    public class ListViewTabs
    public string tabNumber { get; set; }
    public string tabDetails { get; set; }
    >>The .dll is generic ... could be called by any namespace.
    Every class belongs to a namespace (potentially the global (or unnamed) namespace) in C#.
    >>It needs to know about the ListViewTabs class in this example.
    If the method in the .dll needs to know about the ListViewTabs class you must put the ListViewTabs class into the same .dll or create another .dll, put the ListViewTabs class there and then add a reference to this .dll from the one containing your method.
    You cannot keep the ListViewTabs class in the WPF application project from which you add a reference to the .dll that contains the method because you cannot add a reference from A to B and from B to A as this will lead to a circular dependency.
    Hope that helps.
    Please remember to close your threads by marking helpful posts as answer and please start a new thread if you have a new question.

  • Can't step into CVI step that calls LabVIEW DLL?

    Windows 2000 SP1
    TestStand 2.01f
    LabWindows CVI 6.0
    LabVIEW 6.1 Runtime
    We have a framework based on TestStand and CVI. A customer has supplied us
    with a DLL written in LabVIEW 6.1 and packaged with the Application Builder
    that we need to call from a CVI test library DLL. They say they can't
    supply us with a non-LabVIEW implementation. We installed the LabVIEW 6.1
    run-time. We added code to the CVI test library to dynamically load and
    unload the LabVIEW DLL using LoadLibrary and FreeLibrary. LoadLibrary is
    called in a function in the MainSequence Startup step group, FreeLibrary is
    called in a function in the MainSequence Cleanup step group.
    Things run as expected when the CVI DLL is built as Release or Debug and the
    CVI
    adapter is configured to run in-process.
    However, if we try to debug CVI DLL by building it as Debug and configuring
    the CVI adapter to run in an external instance of CVI, things hang the first
    time we try to step into, or run, a CVI test library step that calls one of
    the functions in the LabVIEW DLL. On the Applications tab in Task Manager,
    the item named LabVIEW is marked as 'Not Responding'. The only way to
    recover is to kill the LabVIEW process, which takes down CVI and TestStand
    with it. If none of the LabVIEW DLL functions are called, no problems are
    seen (no hang).
    I assume the problem has something to do with the library getting mapped to
    the wrong process space (TestStand v. the external CVI instance). Is there
    any way to solve this problem? Any ideas or suggestions would be
    appreciated.
    Joe

    > Out of curiousity, what happens if you attempt to debug your DLL from
    > CVI? For example, configure TestStand to run its steps 'inProcess'...
    > but then close the TestStand application and in CVI, configure it so
    > that the Specified External Process dialog points to TestStand's
    > SeqEdit.exe (CVI launches TestStand when debugging the project). Once
    > TestStand is running, run your test and set your break points as
    > usual, you should be able to step into the CVI code if nothing else.
    > If not, I would be interested in hearing what problems you encounter.
    When 'debugging' SeqEdit from CVI, we experienced no lock up.
    Thanks for this suggestion. Debugging from CVI is a workaround for now,
    though not highly desirable as it is reverse from normal debug proc
    edure
    (user can't step into CVI from TestStand). Still would like to know if
    'normal' debugging of this problem is possible.
    > The nice thing about debugging directly from Labwindows/CVI while
    > TestStand runs 'inprocess' is that you can avoid some library linking
    > errors, which may be the source of the troubles you are seeing.
    The problem appears to be general to LabVIEW DLLs called from an external
    instance of CVI under TestStand. We were able to reproduce the problem with
    a simple LabVIEW VI compiled to a DLL, then called from a simple CVI DLL
    under TestStand. We will package up some sample code and submit it to NI
    tonight or tomorrow.
    Thanks for you help.
    Joe

  • How do you use the windows User32.dll Library functions to read variables from other applications that are running

    I am trying to read a text box from a programme running at the same time as my Labview application using calls to the Windows
    User32.dll. I believe I need to find the window handle for the 'form' containing this text string and use this together with
    various other defined input variables to access the sting.
    I have no experience of using this 'Call Library Function Node', but have an understanding of the 'C' programming language. Does anyone have
    example Labview code showing how this might be done.
    Thanks

    If you're trying to access information that's being displayed in the window of another application and that application has no ActiveX interface, then yes, Windows calls can be used. There's a very good example on calling DLLs that ship with LabVIEW. Open the Example Finder (Help->Find Examples) and switch to the Search tab. Enter "Call" in the search box and open the VI "Call DLL". Run the VI, select any of the examples, and click the "Open Example VI..." button. That shows you how to call a DLL.
    Now, given that you have no experience in calling DLLs, have only an "understanding" of C (which to me means you have never written something like a DLL), and don't seem to know that much about what Windows functions you may need, you're going to find this route pretty difficult, especially since you have to deal with Windows API calls, which are not always that easy to do from LabVIEW.
    Let me propose an alternate solution. Go over to http://www.autoitscript.com/autoit3/ and download AutoIt. This is an automation tool that allows you to automate just about anything you want. It has an ActiveX interface that you can call from LabVIEW. I've attached an example VI that shows you how to use it to get the value of a text box from one of the tabs in the computer "System Properties" control panel applet.
    Attachments:
    AutoIt Example (v7).vi ‏25 KB

  • I need to rename my itunes library, as I have two libraries on 2 different Mac's with the same name.  Can this be done?

    Hi, I have an iMac in one room and a Mac Mini in another.  Each is set up independantly and I unfortunately gave the same iTunes Library name to both libraries, which is now making it impossible for me to use my iPhone as a remote to both libraries.  I prefer to have 2 different libraries.
    Can I rename one library and if so, how?
    Cheers

    You can change the name from iTunes preferences.
    If you choose to share your entire library, its name appears in the iTunes window (below Shared) on other local computers set up to look for shared libraries. To change the name others see, choose iTunes > Preferences, click General, and type a new name in the Library Name field.
    From iTunes 10 for Mac: Share your iTunes library

Maybe you are looking for

  • How the heck does one change one's email address in the Control Panel

    I know this is the wrong place to post this but I don't know where the right place is! In about a week I am changing to a different broadband provider and the email address I have associated with these forums will no longer be valid. Obviously very e

  • Problem with file.encoding in Linux

    Hello, I am currently migrating a java project from Windows to Linux. The project is finally shaping up now, except for some encoding problems. All configuration files are saved in ISO-8859-1/Cp1252 format. When reading and displaying these files in

  • Copy Themes from iWeb 2.0 to 3.0

    Hi , I copied a theme from iWeb 3.0 "Fine Line" to iWeb 2.0. I thought the copied theme would show up in 2.0 but it doesn't. Am I doing something wrong or is it simply not possible to copy a theme the way I did it. I took the theme and thumbnail from

  • E4200 Disk not coming up

    I have a USB external HDD in a Nextar3I enclosure.(1.5 TB seagate (I don't recall the exact ref)). I was on the original firmware of the router and the disk was recognixed perfectly. I did get some issues with the router locking up at time, so I upgr

  • Class passing in lan from one system to other

    how can we pass a class which has integer arrays, variables from one system to other system on LAN when we have the destination address. if u can give a refference code than my work will become more easy.its urgent.