ScriptStartFBlock Method - intrepidcs API

C/C++ declare - VB.NET declare - C# declare - Parameters - Return Values - Remarks - C/C++ example - VB.NET example - C# example

This method starts the specified function block within a script on a neoVI device.

C/C++ Declare

int _stdcall icsneoScriptStartFBlock(void * hObject, unsigned int iFunctionBlockIndex);

Visual Basic .NET Declare

Public Declare Function icsneoScriptStartFBlock Lib “icsneo40.dll” (ByVal hObject As IntPtr, ByVal fb_index As UInt32) As Int32

C# Declare

[DllImport(“icsneo40.dll”)] public static extern Int32 icsneoScriptStartFBlock(IntPtr hObject,UInt32 fb_index);

Parameters

hObject

[in] Specifies the driver object created by OpenNeoDevice.

iFunctionBlockIndex

[in] The index value of the function block to start

Return Values

1 if the function succeeded. 0 if it failed for any reason. 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
NEOVI_ERROR_DLL_SCRIPT_INVALID_FUNCBLOCK_INDEX = 219
NEOVI_ERROR_DLL_SCRIPT_NO_SCRIPT_RUNNING = 226

Remarks

The script containing the specified function block must have been successfully downloaded to the neoVI using LoadScript. The valid index values for a function blocks within a script can be found in the cmvspy.vs3cmb.h file that is produced by Vehicle Spy. Please see Vehicle Spy documentation.


Examples

C/C++ Example:

int iRetVal;
unsigned long lLastErrNum;

iRetVal = icsneoScriptStartFBlock(hObject, Function_Block_1);
if(iRetVal == 0)
{
    printf("\nFailed to start the function block);
}
else
{
    printf("\nSuccessfully started the function block");
}

C# Example:

Int32 iResult;

//Start Function Block in CoreMini
iResult = icsNeoDll.icsneoScriptStartFBlock(m_hObject, Convert.ToUInt32(cboFBToChange.SelectedIndex));

if (iResult == 0)
{
    lblFBStatus.Text = "Function Block failed to Start";
}
else
{
    lblFBStatus.Text = "Function Block Started";
}

Visual Basic .NET Example:

Dim iResult As Int32

'//Start Function Block in CoreMini
iResult = icsneoScriptStartFBlock(m_hObject, Convert.ToUInt32(cboFBToChange.SelectedIndex))

If iResult = 0 Then
    lblFBStatus.Text = "Function Block failed to Start"
Else
    lblFBStatus.Text = "Function Block Started"
End If