Use this page of the Import Shared Library wizard to configure the VIs and controls the wizard generates. Select Tools»Import»Shared Library to launch the Import Shared Library wizard.

The components this page contains depend on whether you select a function or control in the Functions Tree, as well as on the data type of the control you select.

Option Description
Functions Tree

Lists all the functions for which you want the wizard to create wrapper VIs.

Settings Specifies settings for the VIs and controls the wizard generates. This tab includes the following options when you select a function in the Functions Tree:
  • VI Execution Properties—Specifies execution properties of the generated wrapper VI.
    • Reentrant Execution

      Enables a VI to be called by more than one caller. Normally, a VI can only be called by one caller at a time. However, if you want two callers to be able to call the same VI simultaneously, place a checkmark in the Reentrant execution checkbox.

    • Preferred Execution System

      Sets the preferred execution system for the wrapper VI. LabVIEW supports multiple simultaneous execution systems. On some platforms, a VI running in one execution system also can run in the middle of a VI running in another execution system. This allows higher priority tasks, such as data acquisition loops, to interrupt long operations, such as slow calculations.

      Select Other if you want to use a user-defined system.
  • Call Library Node Settings—Specifies settings for the Call Library Function Node in the wrapper VI.
    • Thread

      Specifies whether the generated wrapper VI runs in the LabVIEW UI thread or the execution thread of the caller VI.

      • Run in UI thread

        Select this option if you want the wrapper VI to run in the LabVIEW UI thread. Run in UI thread specifies the Call Library Function Node execution must switch from the current thread to the user interface thread. Execution in the UI thread of a LabVIEW-built shared library that is dynamically loaded using Specify path on diagram causes LabVIEW to hang.

      • Run in any thread—Specifies the Call Library Function execution continues on the current thread executing the VI. You must make sure that multiple threads can call the function simultaneously. Select this option if you want the wrapper VI to run in the execution thread of the caller VI.
        Note All calls to LabVIEW-built shared libraries should specify Run in any thread. If you configure the Call Library Function Node using LabVIEW-built shared libraries and specify Run in UI thread, LabVIEW might hang and require you to restart.
  • Calling Convention

    (Windows) Specifies the calling convention for the function. The default is C.

    • stdcall (WINAPI)

      (Windows) Controls whether the object uses the standard calling convention.

    • C

      (Windows) Controls whether the object uses the C calling convention.

  • Apply to All

    Applies the calling convention of the current function to all functions in the shared library.

  • Declaration in Header File

    Specifies the declaration in the header file.

  • Fundamental Data Type—Specifies the data type of the function according to the header file.
  • Call Library Function Node Prototype

    Specifies the Call Library Function Node prototype.

Control Settings Specifies settings for the VIs and controls the wizard generates. This tab includes the following options when you select a control in the Functions Tree:
  • Control Type

    Specifies the data type of the control. You can select from Void, Numeric, Boolean, String, Cluster, or Custom Control.

    Note You can select one of only Void, Numeric, or String for function returns. You can select one of Numeric, Boolean, String, Cluster, or Custom Control for parameters.
  • Input / Output

    Specifies whether the control is an input, output, or both.

    • Input

      Specifies whether the control is an input.

    • Output

      Specifies whether the control is an output.

      • Create Indicator

        Specifies whether the generated VIs contain indicators for the Output control.

    • Input & Output

      Specifies whether the control is an input, output, or both.

  • Apply to All Matching Parameters

    Applies the type settings, except Input / Output, of the current parameter to all function parameters in the shared library that match the declaration in the header file.

  • Declaration in Header File

    Specifies the declaration in the header file.

  • Fundamental Data Type

    Specifies the data type of the control in the original shared library file.

  • Call Library Function Node Prototype

    Specifies the Call Library Function Node prototype.

Numeric Control Settings Specifies settings for the VIs and controls the wizard generates. This tab includes the following additional options when you select Numeric in the Control Type pull-down menu.
  • Pass Type

    Specifies the pass type for the parameter you select. This option is available only with numeric controls. You can select from Pass by Value, Pass by Pointer, or Pass by Array.

    • Pass by Value

      Passes the value of the parameter by value. The Default Value field appears when you select this option.

    • Pass by Pointer

      Passes the value of the parameter by pointer. The Default Value field appears when you select this option.

    • Pass by Array

      Passes the value of the parameter by array. The Array Size Type and Array Size fields appear when you select this option.

  • Array Size Type

    Specifies the type of the array size. This option is available only with numeric controls that are Pass by Array. Set Input/Output to Output to enable this field.

    • Constant Value

      Select this option if the size is a constant value.

      The Array Size field appears when you select this option.
    • Parameter

      Select this option if the size is a parameter.

      The Array Size Parameter field appears when you select this option.
  • Array Size

    Specifies the size of the array. This option is available only with numeric controls that are Pass by Array and for which you specify Constant Value for Array Size Type.

  • Array Size Parameter

    Specifies the size of the array. This option is available only with numeric controls that are Pass by Array and for which you specify Parameter for Array Size Type.

  • Default Value

    Specifies the default value for the numeric control. This option is available only with controls that are Pass by Value or Pass by Pointer.

  • Representation

    Specifies the representation for the numeric control. Representation can be any numeric data type that LabVIEW supports.

Boolean Control Settings Specifies settings for the VIs and controls the wizard generates. This tab includes the following additional options when you select Boolean in the Control Type pull-down menu.
  • Boolean Default Value

    Specifies the default value for the Boolean control. You can select True or False.

String Control Settings Specifies settings for the VIs and controls the wizard generates. This tab includes the following additional options when you select String in the Control Type pull-down menu.
  • String Default Value

    Specifies the default value of the string. Set Input/Output to Input or Input & Output to enable this field.

  • String Size Parameter

    Specifies the size of the string. This option appears only if you set String Size Type to Parameter. If you set Input/Output to Output, this value initializes the string.

  • String Size

    Specifies the size of the string. This option appears only if you set String Size Type to Constant Value.

  • String Size Type

    Specifies whether to use a parameter of the VI or a constant value to indicate the string size.

    • Constant Value

      Select this option if the size is a constant value.

      The String Size field appears when you select this option.
    • Parameter

      Select this option if the size is a parameter.

      The String Size Parameter field appears when you select this option.
Custom Control Settings Specifies settings for the VIs and controls the wizard generates. This tab includes the following additional options when you select Custom Control in the Control Type pull-down menu.
  • Path to Custom Control

    Specifies the path to the custom control.

Pointer Settings Specifies settings for the VIs and controls the wizard generates. This tab includes the following options when you select a structure that contains a pointer from the Functions Tree:
  • Allocate memory for this pointer element in LabVIEW before calling the function

    Specifies whether to allocate memory for the pointer element before LabVIEW passes the structure that contains the pointer into the function.

    • Memory Size

      Specifies the size of the memory to allocate for the pointer in bytes.

    • Default string to initialize the pointer

      Specifies the string to use to initialize the string pointer inside the structure.

  • Pass the value into wrapper VI

    Specifies whether to pass the value to which the pointer points into the wrapper VI.

Name and Description Specifies the name and description for the function or control you select in the Functions Tree. This tab includes the following options:
  • Control/VI Name

    Specifies the name of the wrapper VI or custom control that LabVIEW creates.

  • Control/VI Description

    Specifies a description for the wrapper VI or custom control.