viWriteFromFile
Syntax
viWriteFromFile (ViSession vi, ViConstString fileName, ViUInt32 count, ViPUInt32 retCount);
Description
Take data from a file and write it out synchronously. This write operation synchronously transfers data. The file specified in fileName is opened in binary read-only mode and the data (up to end-of-file or the number of bytes specified in count) are read. The data is then written to the device. This operation returns only when the transfer terminates.
This operation is useful for sending data that was already processed and/or formatted. VISA uses ANSI C file operations, so the mode used by viWriteFromFile is "rb". If you pass VI_NULL as the retCount parameter to the viWriteFromFile operation, the number of bytes transferred will not be returned. This may be useful if it is important to know only whether the operation succeeded or failed.
Parameters
Name |
Dir |
Type |
Description |
vi |
IN |
ViSession |
Unique logical identifier to a session. |
fileName |
IN |
ViConstString |
Name of file to which data will be read. |
count |
IN |
ViUInt32 |
Specifies number of bytes to be written. |
retCount |
OUT |
ViPUInt32 |
Number of bytes actually transferred. |
Special Value for retCount Parameter |
|||
Value |
|
|
Description |
VI_NULL |
|
|
Do not return the number of bytes transferred. |
Return Values
Type ViStatus |
This is the function return status. It returns either a completion code or an error code as follows. |
Completion Codes |
Description |
VI_SUCCESS |
Transfer completed. |
Error Codes |
Description |
VI_ERROR_BERR |
Bus error occurred during transfer. |
VI_ERROR_CONN_LOST |
I/O connection for a session has been lost. |
VI_ERROR_FILE_ACCESS |
An error occurred while trying to open the specified file. Possible reasons include an invalid path or lack of access rights. |
VI_ERROR_FILE_IO |
An error occurred while accessing the specified file. |
VI_ERROR_INV_SESSION |
The given session or object reference is invalid (both are the same value). |
VI_ERROR_IO |
An unknown I/O error occurred during transfer. |
VI_ERROR_NCIC |
The interface associated with the given vi is not currently the controller in charge. |
VI_ERROR_NLISTENERS |
No Listeners condition is detected (both NRFD and NDAC are deasserted). |
VI_ERROR_NSUP_OPER |
The given vi does not support this function. |
VI_ERROR_OUTP_PROT_VIOL |
Device reported input protocol error during transfer. |
VI_ERROR_RAW_RD_PROT_VIOL |
Violation of raw read protocol occurred during transfer. |
VI_ERROR_RAW_RW_PROT_VIOL |
Violation of raw write protocol occurred during transfer. |
VI_ERROR_RSRC_LOCKED |
Specified operation could not be performed because the resource identified by vi has been locked for this kind of access. |
VI_ERROR_TMO |
Timeout expired before function completed. |
See Also