Configure IVI Logical Name to use different Driver Session programmatically

Hi,
Is it possible to change the Driver Session associated with an IVI Logical Name in Labview ?
thanks,
Gary. 

Hi Gary,
Unfortunately there is no function in LabVIEW that does any IVI setup.  All of the configurations for your driver sessions and logical names need to be set in MAX, and saved.  So while you can change the driver session a logical name uses, you can only do this through MAX.
Kind regards,
Sheela Sujeeun
Applications Engineer
National Instruments UK

Similar Messages

  • Retrieving mapping from IVI logical name to full driver session name.

    MAX, of course, lets you set up "Driver Sessions" with full names, and then "logical names" which are shortcuts to the full driver session. How can I retrieve the actual driver session that the logical name maps to? I can get the handle to the logcal name list via the IVI library, but I can't find any function that lets me retrieve further information about the logical name. Is this available in the "Configuration Server C API"?

    What I want is, as I said, the mapping between the logical name and the session. This must be available, since the IVI drivers use it to go from a logical name to the attached session! One would think that it would be a single function call.
    I'm doing this because in my program I can select which of a number of drivers (Newport motion controllers, in this case) a particular GUI control is attached to. The full session name is long, and there are - of course - sessions that have nothing to do with motion controllers. In the control list (a ring control) I use the logical names, which are shorter. However I want to also list the full session name elsewhere. Since I can't go from the session name to the logical name, that mapping isn't stored anywhere, I must go the other way around.
    Ok, I think I figured it out. This could really be documented better!
    Also, this whole thing could really be in the .ivi library configuration store section, which encapsulates a few of these calls, but not all of them.
    //include section
    #include <IviConfigServer.h>    //IVI configuration store
    //done once at program startup. Note: this gets a copy, you don't have to dispose of ConfigStoreHandle afterwards.
    static IviConfigStoreHandle ConfigStoreHandle = NULL;
    Status = Ivi_GetConfigStoreHandle (&ConfigStoreHandle);
    //This is the pain in the butt.    
    ViStatus Status;
    IviLogicalNameCollectionHandle LogicalNameCollectionHandle = NULL;
    IviLogicalNameHandle LogicalNameHandle = NULL;
    IviSessionHandle SessionHandle;
    ViChar         ControllerSessionName[MAX_Controller_Name_LEN];  
    ViChar         ControllerDescriptor[MAX_DESCRIPTOR_LEN];
    ViChar         ControllerDescription[MAX_Controller_Name_LEN];
    //get the configuration store logical name collection (what you see in MAX under "Logical Names")
    Status = IviConfig_GetConfigStoreLogicalNameCollection (
        ConfigStoreHandle,
        &LogicalNameCollectionHandle);
    //how many logical names are there in the collection?
    Status = IviConfig_GetLogicalNameCount (
        LogicalNameCollectionHandle,
        &IVI_ItemCount);
    //For each logical name, find the corresponding session name   
    for (i = 1; i <= IVI_ItemCount; i++) {
        Status = IviConfig_GetLogicalNameItemByIndex (
                LogicalNameCollectionHandle,
                i,
                &LogicalNameHandle);
        //get the session name for this logical name
        Status = IviConfig_GetLogicalNamePropertyViString (
                LogicalNameHandle,
                IVICONFIG_VAL_LOGICAL_NAME_NAME,
                MAX_Controller_Name_LEN,
                ControllerDescriptor);
        //get the description for this logical name
        Status = IviConfig_GetLogicalNamePropertyViString (
                LogicalNameHandle,
                IVICONFIG_VAL_LOGICAL_NAME_DESCRIPTION,
                MAX_Controller_Name_LEN,
                ControllerDescription);
        //get the handle for the ession attached to this logical name
        Status = IviConfig_GetLogicalNameSessionReference (
                LogicalNameHandle,
                &SessionHandle);
        //get the name of the session (what I really wanted in the first place)
        Status = IviConfig_GetSessionPropertyViString (
                SessionHandle,
                IVICONFIG_VAL_CONFIG_COMPONENT_NAME,
                MAX_DESCRIPTOR_LEN,
                ControllerSessionName);                

  • IVI logical name as Variant

    Hi,
    Another problem with LV 7.11:
    I have a 'VI caller' that opens a VI by name or Ref, sets its controls using 'Invoke Method - Set Control Value [Variant], runs the VI and gets all display results. Worked fine up to now.
    Today I ran into a problem when I was calling an IVI-based functional generator like NIs example 'IviFgen [ARB] - Generate Arb Wfm.vi'. This has a control named 'FG Device Handle' which is of the type IVI-Class.IviFGen.hp33120a and has the logical name 'FGen'. When I convert this value 'FGen' into Variant, it is represented as a numeric value, e.g. 0x05568858. If I use the string 'FGen', it is converted to '"FGen"'. Both values are NOT ACCEPTED by Set Control Value [Variant] when applied to the apropriate control of the 'IviFgen [ARB] - Generate Arb Wfm.vi'.
    What can I do?
    Greetings from Germany!
    Uwe

    Hello!
    I tried to use the VI as SubVI and it worked without any exception.
    To use it as top level VI called dynamically, you can simply replace the IVI Logical Name Control with a normal string control where you write the logical name.
    IVIFGen initialize.vi accept also a String for the logical name.
    So you can use the Set Control Value (Variant) to transfer the string to the control.
    Best regards
    Ken

  • Resource Name, IVI Logical Name, Driver session on MAX

    Inside MAX, we can set Device Name, Logical Names, and Driver Sessions. Can I setup those on LabWindows or LabView? or you have C# wrapper to do this?

    Hi Gary,
    Unfortunately there is no function in LabVIEW that does any IVI setup.  All of the configurations for your driver sessions and logical names need to be set in MAX, and saved.  So while you can change the driver session a logical name uses, you can only do this through MAX.
    Kind regards,
    Sheela Sujeeun
    Applications Engineer
    National Instruments UK

  • What are management issues when Principal and DR mirroring environments use different drive letters. 2008R2 Enterprise Edition.

    I have to build a DR environment. The drive letters on principal are different than I HAVE to use on new DR server. Is 2008R2 mirroring able to handle that difference in drive letters. And what are the complexities for managing this setup and failing over
    from principal to DR?  Thank you for your reply!

    You can handle database Mirroring with difference in drive letters.
    The mirroring is not centralized on drive letter but there will be some issues when you add a file to a PRINCIPAL, the DDL gets applied across mirror, then your database will go into suspended status until you duplicate the path on the mirror.
    Its recommended to have same identical configuration.
    You can refer the below link 
    http://www.extremeexperts.com/sql/articles/DBMirroring2.aspx
    http://blogs.msdn.com/b/suhde/archive/2009/07/13/step-by-step-guide-to-configure-database-mirroring-between-sql-server-instances-in-a-workgroup.aspx
    http://sqlserverperformance.wordpress.com/2012/03/12/sql-server-database-mirroring-tips-and-tricks-part-1/
    -Prashanth

  • Configurin​g Logical name of IVI with out using MAX tool

    hi,
     I need to configure the Logic name of IVI by API(IviConfigServerCAPI.dll provided by IVI) With out using the MAX tool.Can any one tell me how to use this api to configure the logical name
    Regards
    Parthipan

    It seems you have created a new thread for the topic here. Continue in that thread please
    http://forums.ni.com/ni/board/message?board.id=170​&thread.id=430393&view=by_date_ascending&page=2

  • Can multiple Virtual Devices use the same IVI Driver Sessions?

    I am using Switch Executive 2.0 and I'm having problems creating multiple Virtual Devices.
    I have created a virtual device on a development computer that has no hardware connected to it.  This virtual device uses specific drivers to simulate the devices.  The problem I'm having is that when I create a second virtual device and try to add the same IVI Switches as the first Virtual device, I'm getting the following error:
    An error has occurred while attempting to access the device deviceA_ivi.
    Error -223116 occurred:
    Internal Software error occurred in Switches software.  Please contact National Instruments Support.
    File name: .\source\mxsWrappers\tMXSObject.cpp
    Line Number 192:
    Status Code: -223116
    Can someone please explain why?

    Can you please elaborate on how did you create those simulated devices? Namely, what does your IVI configuration look like? What does the driver session for the logical name look like? What's the software module? What's the hardware module? What is the driver setup string, and what is the simulation mode for the device in question?
    -Serge
    Srdan Zirojevic

  • Needs Ability to Configure AutoSave To Different Drive than Scratch

    If you edit a large document with limited memory, and are exercising the Photoshop scratch file, a coincidental auto-save can really slow things down because the drive then begins to thrash.
    It would be great if the AutoSave could be configured to go to a separate drive than that selected for the Scratch file.
    I mentioned this on a recent Connect session, and I'm putting it here as well.  I believe it's something Adobe needs to consider by CS6 release time.
    On a system with a sufficient number of separate drives at the point where scratch file activity picks up this could make a HUGE difference - between Photoshop usability and UNUSABILITY.
    Possible workaround:
    Because Adobe has had the good foresight to use a subfolder, it's possible that the auto-save folder could be redirected to another drive through a file system link.  I'll be checking into whether this helps the throughput, as I'm not sure how much the link itself being on the same drive as the scratch files could be a bottleneck.
    -Noel

    I have an SSD dedicated for use as a scratch drive. So far I haven't noticed a performance hit with background save active, but I've yet to get into really intensive processing with large images.
    Since there are so many different drive and drive bus limitations, it's hard to say that Photoshop would be less bogged down using different drives for scratch and auto save. You may find a dedicated  SSD is a real boon to performance as I have.

  • Does mxctrllib provide a call which returns a reference to all the logical names in MAX?

    I'm looking for a call that returns all the MAX logical names on a system. I would populate a drop-down box with those names to allow the user to select a name at program run-time. Currently I hard code a particular logical name as a string and init the session. This is not flexible. Thanks ...

    The NiMxCtrl.dll which is the server for the mxctrllib objects is meant for National Instruments internal product use only. There is no documentation for developing 3rd party apps that utilize its functionality.
    I'm not sure if you are talking about the IVI logical names listed in MAX or not, but if you want to know where you can get a list of these, they are in the ivi.ini file found in your C:\VXIpnp\Win95\niivi directory. Just parse this file to read all of your IVI logical names and setup parameters.
    Jason F.
    Applications Engineer
    National Instruments
    www.ni.com/ask

  • CL_GUI_HTML_VIEWER need to open a different Browser session if one exists

    Hi All,
    I'm using the class  cl_gui_html_viewer for displaying a PDF in My program. However, if an Internet Explorer Session is already open, the HTLM_VIEWER created in my program is behaving more like a child of the already open browser (In other words, it works like pressing CTRL+N on the original window). But my requirement is to open a new Browser session altogether (Like Opening up another Internet Explorer Session).
    The reason i need to have this is because the PDF i display is based on an authenticated login. If a person is already logged in through the Stand alone IE browser, my program should not allow the same user to view it in the browser but authenticate again by prompting for a login. This is achieved by using different Browser sessions (not by CTRL+N).
    Please let me know if you have any thoughts on achieving this.
    Thanks in advance,
    Jr.

    where is this PDf coming from, is it from external source thru a url? can you pass uid/pwd to this PDF via url,
    if yes, pass a wrong uid/pwd thru the url , every time you load the pdf, in the html viewer control, this would always prompt for authntication box. other option is to delete the sso2 cookie,  you need to find a method to delete the cookie in your local machine created by calling this pdf from standalone browser.
    Raja

  • Finding a logical name for PXI5112 modules to be used in niScope_Init

    I need to dynamically allocate the number of PXI5112 modules on several PCs in a C++ program. After going through great length using VISA calls to obtain the VISA logical name ( PXI3::11::INSTR, etc.), I found out that niScope_Init is expecting an IVI or DAQ logical names. How does one go about to get the logical name for those PXI modules so niScope_Init can use? Hardcoding the name such as DAQ::1 is out of the question because the number of modules is different from test to test. Thanks.
    Software:
    niScope driver: 2.6
    Microsoft Visual studio.net 2003
    Measurement Studio 7.0
    Windows XP SP2
    Hardware:
    Group1 : 5 PXI5112s
    group2 : 3 PXI5112s
    group3 : 7 PXI5112s

    Here's a quick and dirty example of how to use the niModInst API in C:
    ViSession sessionHandle = VI_NULL;
    ViInt32 numberOfDevices = 0,
    i = 0;
    ViChar deviceNameBuffer[256] = "";
    niModInst_OpenInstalledDevicesSession(
    "niScope",
    &sessionHandle,
    &numberOfDevices);
    for (i=0; i < numberOfDevices; i++) {
    niModInst_GetInstalledDeviceAttributeViString(
    sessionHandle,
    i,
    NIMODINST_ATTR_DEVICE_NAME,
    256,
    deviceNameBuffer);
    printf("%s\n", deviceNameBuffer);
    niModInst_CloseInstalledDevicesSession(sessionHandle);
    The device names that you're printing out in this example can be used as the resourceName input to the niScope_init function.
    In practice, though, be sure to check the status that is returned from each function. You can get further information about an error using the niModInst_GetExtendedErrorInfo function. All the functions I used above can be found in the niModInst.h file.
    Hope that provides some more help.

  • Is there a way to use different NIC names in 10g RAC?

    For example node 1 has ipge0 for private, ipge1 for private and node 2 has Solaris default e1000g0 and e1000g1? Or do interface names have to match on all nodes? I am not referring to IPs or subnets - just NIC names.
    Here is some background.
    This was a 2 node 10g RAC on Solaris that has been in operation for years. Node 2 experienced a corrupt root partition (OS, nothing to do with Oracle), so OS was reinstalled. After OS reinstall I copied /var/opt/oracle/*.* from node 1, changed them to reflect node 2 info, plus CRS related files from /etc/init.d, such as init.crsd, etc. This is shared Oracle home, so Oracle continued to run on node 1 just fine.
    However, after crs startup nodeapps tells me "atlts04ra.atlts04.vip:ifconfig: status: SIOCGLIFFLAGS: ipge0: no such interface". Indeed, this interface does not exist on node 2.
    So, is there a way to instruct oracle to use different interface names for nodes? Or will vipca ask for matching NIC names just like disk mount names have to match?
    I want to avoid reinstallation of RAC because that will disrupt oracle database that has been running on shared oracle home all along.
    Thanks.

    Fzheng, I am very interested in your statement "however you can change the e1000g0 to ipge0".
    You mean to say there is an OS script that will downgrade ipge0 interfaces to e1000g0?
    I got some more information from SysAdmins yesterday. Apparently, when OS was reinstalled on node 2 after root partition corruption, they also patched it up to Solaris 10u9 (which by default created e1000g0-type interfaces). The first node still had 10u7 with ipge0 interfaces. We, the DBAs, were not aware of the upgrade. So, nodeapps cant start saying "no such interface"on node 2.
    You are probably referring to script /usr/sbin/e1000g_transition.
    Here is the description:
    "DESCRIPTION
    This script allows you to perform an optional driver upgrade
    for the Intel PRO/1000 device present on this system from the \"ipge\"
    network driver to the Sun standard \"e1000g\" network driver. The
    e1000g driver include features such as link aggregation as well as
    superior performance in most environments. Moving forward, e1000g
    will benefit from new features as they become available, bug fixes,
    and performance enhancements. The disadvantage is that some
    applications configuration files may require modification to use
    e1000g if they reference the ipge network interface.
    This script must be run in single user mode.
    This script will alter network interfaces and related system
    configuration files. Configuration files for 3rd party applications
    will NOT be changed. After running this script, applications present
    on the system may require maintenance. The system may be in an
    unsecured state. The effects of this script may be reversed using
    the backout (-b) option."
    So, if I understand you correctly, you are proposing to run this this script with the backout (-b) option on node 2, so interface names will match.
    Is this correct?
    Thanks.
    Vladimir Grigorian.
    http://vgrigorian.com

  • I have 2 macs and 2 PC laptops in my home wireless network.  Can I use the Airport/Time Capsule hard drive to back up all 4 machines?  I know that I will have to use different back up software on the PCs, but is it possible over the wireless network?

    I have 2 macs and 2 PC (Windows 7) laptops in my home wireless network. (The iMac is hardwired via ethernet to the Airport/Time Capsule; the others are wireless connections using Airport).  I want to use the hard disk drive in the Time Capsule as a network backup drive for all 4 computers.  Is this possible?  Could someone help me by telling me how to configure it?  I know I will have to use different backup software in the 2 Windows 7 Laptops?  Do I need to use the Windows backup software, or can I use a third party program like Acronis True Image?  Thanks in advance for the help

    It is your fault, pondini.. all your fault.
    I read of all the things that go wrong restoring Time Machine backups.. particularly stupid things like mail, photo libraries don't go back.. etc. And looking through the incredible number of issues people have here, when their Mac finally takes a dive how hard it is to restore.
    I restored a test hard disk from a TC.. and it takes ages and ages to even make up its mind to start.
    I worked in computer support for ages, but not Macs.. so my experience is ghost.. ghost images.. on large commercial server setups, can stream restore to multiple computers at once.. even doing it computer by computer the image is simple as network boot to restore. But ghost went the way of Symantec.. sigh!! And was destroyed.
    A product like clonezilla, Free linux boot cd.
    http://lifehacker.com/5078397/clonezilla-backs-up-and-restores-your-disks
    Can backup a Hard disk in just about any format.. yet to try it on a Mac to a TC.. but I will. Boot from CD.. instead of your lost Lion partition which no longer exists (because the hard drive had to be replaced) and the DVD they no longer give you, and restore the entire hard disk in a couple of hours .. to the exact image at the point you made the clone.. in any format, with any partitions.
    My bet is that it will kill TM .. but you could be right.
    It is just the prospect of all those permission changes, photos and mail libraries etc that worry me.

  • Using File Adapter with Logical Name

    I am creating a file adapter with Logical name. Apart from giving the Logical name is there any other configuration that I am suppose to do on the Web Logic before I start using it?
    Thanks in Advance.

    After configuring the file adapter, all you need to do is , give the path as a value for the logical name which you have created earlier. That you can do on the file adapter property inspector. There is no need to do anything on the server level. Lemme know
    Thanks,
    N

  • Moving Configuration Manager Database to a Different Drive

    Hello,
    Is there a way to move the Configuration Manager database to a different drive in the same machine?  We are using Configuration Manager SP1 and SQL Server 2008 R2.  We are running out of disk space in drive C:  Please advise what would be
    the possible solution for this.  Thanks so much.
    Regards,
    Joann

    Yes, follow the SQL Server documentation for moving database files.
    http://technet.microsoft.com/en-us/library/ms345483.aspx
    In general, I have an easier time when I have stopped the ConfigMgr services and the IIS websites first.
    Usually, then I will run the "Relocation for Scheduled Disk Maintenance" procedure.
    Regards,
    Nash
    Nash Pherson, Senior Systems Consultant
    Now Micro -
    My Blog Posts
    If you've found a bug or want the product worked differently,
    share your feedback.
    <-- If this post was helpful, please click "Vote as Helpful".

Maybe you are looking for