Sets device and network parameters for a ValueCAN 4-4 device
GetVCAN4Settings Method - neoVI API
This method reads the configuration settings from a ValueCAN4-4 device.
int _stdcall icsneoGetVCAN4Settings(void * hObject, SVCAN4Settings *pSettings, int iNumBytes);
Public Declare Function icsneoGetVCAN4Settings Lib “icsneo40.dll” (ByVal hObject As IntPtr, ByRef pSettings As SVCAN4Settings, ByVal iNumBytes As Int32) As Int32
iNumBytes
[in] This value is always the size, in bytes, of the SVCAN4Settings structure.
Return Values
Returns 1 if successful, 0 if an error occurred. GetLastAPIError must be called to obtain the specific error. The errors that can be generated by this function are:
NEOVI_ERROR_DLL_NEOVI_NO_RESPONSE = 75
Remarks
After getting the current settings, you may change the parameters defined in the SVCAN4Settings structure and write the settings back to the ValueCAN 4-4 using SetVCAN4Settings.
Examples
SVCAN4Settings VcanReadSettings;
int iNumberOfBytes;
int iResult;
//Get the settings
iNumberOfBytes=sizeof(VcanReadSettings );
iResult = icsneoGetVCAN4Settings(m_hObject, &VcanReadSettings , iNumberOfBytes);
if(iResult == 0)
{
MessageBox::Show("Problem reading configuration");
return;
}
//Declared at form level and previously open with a call to OpenNeoDevice
IntPtr m_hObject; //handle for device,
SVCAN4Settings VcanReadSettings = new SVCAN4Settings();
int iNumberOfBytes;
int iResult;
//Get the settings
iNumberOfBytes = System.Runtime.InteropServices.Marshal.SizeOf(VcanReadSettings);
iResult = icsNeoDll.icsneoGetVCAN4Settings(m_hObject,ref VcanReadSettings , iNumberOfBytes);
if (iResult == 0)
{
MessageBox.Show("Problem reading configuration");
return;
}
Private m_hObject As IntPtr '// Declared at form level and previously open with a call to OpenNeoDevice
Dim VcanReadSettings As SVCAN4Settings
Dim iNumberOfBytes As Integer
Dim iResult As Integer
'//Get the settings
iNumberOfBytes = System.Runtime.InteropServices.Marshal.SizeOf(VcanReadSettings)
iResult = icsneoGetVCAN4Settings(m_hObject, VcanReadSettings , iNumberOfBytes)
If iResult = 0 Then
MsgBox("Problem reading configuration")
Exit Sub
End If
SetVCAN4Settings Method - neoVI API
This method writes configuration settings to a ValueCAN4-4 device.
int _stdcall icsneoSetVCAN4Settings(void * hObject, SVCAN4Settings *pSettings, int iNumBytes, int bSaveToEEPROM);
Public Declare Function icsneoSetVCAN4Settings Lib “icsneo40.dll” (ByVal hObject As IntPtr, ByRef pSettings As SVCAN4Settings, ByVal iNumBytes As Int32, ByVal bSaveToEEPROM As Int32) As Int32
[in] Specifies the driver object created by OpenNeoDevice.
pSettings
[in] The address of an allocated SVCAN4Settings structure.
iNumBytes
[in] This value is always the size, in bytes, of the SVCAN4Settings structure.
bSaveToEEPROM
[in] If set to 0, the settings changes will revert to the values stored in EEPROM when the ValueCAN3 is power-cycled. If set to 1, the values will overwrite the EEPROM settings and become persistent across power-cycles of the ValueCAN4-4.
Return Values
Returns 1 if successful, 0 if an error occurred. GetLastAPIError must be called to obtain the specific error. The errors that can be generated by this function are:
NEOVI_ERROR_DLL_NEOVI_NO_RESPONSE = 75
Remarks
Before using this function, the SVCAN4Settings structure must be initialized with the current neoVI settings using GetVCAN4Settings.
Examples
SVCAN4Settings VCANReadSettings;
int iNumberOfBytes;
int iResult;
//################################
//VCANReadSettings struct is read
//and changed as needed before
//Setting the new values
//################################
iNumberOfBytes=sizeof(VCANReadSettings );
iResult = icsneoSetVCAN4Settings(m_hObject, &VCANReadSettings , iNumberOfBytes, 1);
if(iResult == 0)
{
MessageBox::Show("Problem Sending VCAN configuration");
return;
}
SVCAN4Settings VCANReadSettings = new SVCAN4Settings();
int iNumberOfBytes;
int iResult;
//################################
//VCANReadSettings struct is read
//and changed as needed before
//Setting the new values
//################################
iNumberOfBytes = System.Runtime.InteropServices.Marshal.SizeOf(VCANReadSettings);
iResult = icsNeoDll.icsneoSetVCAN4Settings(m_hObject, ref VCANReadSettings , iNumberOfBytes, 1);
if(iResult == 0)
{
MessageBox.Show("Problem Sending VCAN configuration");
return;
}
Dim VCANReadSettings As SVCAN4Settings
Dim iNumberOfBytes As Integer
Dim iResult As Integer
'//################################
'//VCANReadSettings struct is read
'//and changed as needed before
'//Setting the new values
'//################################
iNumberOfBytes = System.Runtime.InteropServices.Marshal.SizeOf(VCANReadSettings)
iResult = icsneoSetVCAN4Settings(m_hObject, VCANReadSettings , iNumberOfBytes, 1)
If iResult = 0 Then
MsgBox("Problem Sending VCAN configuration")
Exit Sub
End If