# Function Reference

# _viClose

Closes a VISA connection to an Instrument/Device

#include <Visa.au3>
_viClose ( $hSession )

## Parameters

$hSession | A VISA session handle as returned by _viOpen()

## Return Value

Success: | 0.
Failure: | -1 if the VISA DLL could not be open or a NON ZERO value representing the VISA error code (see the VISA programmer's guide).

## Remarks

As for all the VISA functions the VISA libraries must be installed (you can check whether visa32.dll is in {WINDOWS}\system32) and a GPIB card (such as a National Instruments NI PCI-GPIB card or an Agilent 82350B PCI High-Performance GPIB card) must be installed

## Related

_viExecCommand, _viFindGpib, _viGpibBusReset, _viGTL, _viOpen, _viSetAttribute, _viSetTimeout

## Example

    ; - This assumes that you have instrument set to GPIB address 1
    ; It shows how to use the _viExecCommand function in stand alone mode and combined
    ; with _viOpen and _viClose.
    ; It also shows the _viGTL function

    #include <MsgBoxConstants.au3>
    #include <Visa.au3>

    Local $h_Session = 0

    ; Query the ID of the instrument in GPIB address 3
    MsgBox($MB_SYSTEMMODAL, "Step 1", "Open the instrument connection with _viOpen")
    Local $h_Instr = _viOpen("GPIB::3::0")
    MsgBox($MB_SYSTEMMODAL, "Instrument Handle obtained", "$h_Instr = " & $h_Instr) ; Show the Session Handle
    ; Query the instrument

    MsgBox($MB_SYSTEMMODAL, "Step 2", "Query the instrument using the VISA instrument handle")
    Local $s_Answer = _viExecCommand($h_Instr, "*IDN?") ; $h_Instr is NOT A STRING now!
    MsgBox($MB_SYSTEMMODAL, "GPIB QUERY result", $s_Answer) ; Show the answer
    ; Query again. There is no need to OPEN the link again

    MsgBox($MB_SYSTEMMODAL, "Step 3", "Query again. There is no need to OPEN the link again")
    $s_Answer = _viExecCommand($h_Instr, "*IDN?")
    MsgBox($MB_SYSTEMMODAL, "GPIB QUERY result", $s_Answer) ; Show the answer

    MsgBox($MB_SYSTEMMODAL, "Step 4", "Close the instrument connection using _viClose")
    _viClose($h_Instr) ; Close the instrument connection