GetErrorInfo Method - intrepidcs API
C/C++ declare -
VB declare -
VB.NET declare - C# declare
- Parameters - Return
Value - Remarks - C/C++ example
- VB example
- VB.NET example - C# example
This method returns a text description of an intrepidcs API error number.
int
_stdcall icsneoGetErrorInfo(int lErrorNumber,Visual Basic .NET Declare
Public
Declare
Function icsneoGetErrorInfo
Lib "icsneo40.dll" _
(ByVal
lErrorNumber As
Int32, _
ByVal
sErrorDescriptionShort As
String, _
ByVal sErrorDescriptionLong
As
String,
_
ByRef lMaxLengthShort
As Int32, _
ByRef lMaxLengthLong
As Int32, _
ByRef lErrorSeverity
As Int32,
_
ByRef lRestartNeeded
As Int32)
As
Int32
C# Declare
[DllImport("icsneo40.dll")]
public
static
extern
int icsneoGetErrorInfo(int
iErrorNumber,
StringBuilder
sErrorDescriptionShort,
StringBuilder
sErrorDescriptionLong,
ref
int iMaxLengthShort,
ref
int iMaxLengthLong,
ref
int lErrorSeverity ,
ref
int
lRestartNeeded);
Parameters
lErrorNumber
[in] This is the number of the error message returned from GetErrorMessages. A separate topic describes the possible values for error
messages.
sErrorDescriptionShort
[out] This is short description of the error. This parameter
should be sized to include up to 255 characters including the NULL terminator.
sErrorDescriptionLong
[out] This is longer more detailed description of the error.
This parameter should be sized to include up to 255 characters including the
NULL terminator.
lMaxLengthShort
[in] This is the size in characters of the sErrorDescriptionShort
array that is being passed in. This value must be 255 or less.
lMaxLengthLong
[in] This is the size in characters of the sErrorDescriptionLong
array that is being passed in. This value must be 255 or less.
lErrorSeverity
[out] This indicates the error severity. This is estimated
severity for the application and doesn't have significant meaning. See Table 1
below for more information.
lRestartNeeded
[out] If 1 it is recommend that the application close
communications with the DLL and reopen it.
If the error number was found successfully the return value will be non-zero.
None.
Table 1 - Descriptions of Error Severity
Error Severity | Description |
---|---|
const unsigned long icsspyErrCritical=0x10; | A critical error which affects operation or accuracy |
const unsigned long icsspyErrExclamation=0x30; | An important error which may be critical depending on the application. |
const unsigned long icsspyErrInformation=0x40; | An error which probably does not need attention. |
const unsigned long icsspyErrQuestion=0x20; | An error which is not understood. |
Examples
// Read the errors
from the DLL
lResult =
icsneoGetErrorMessages(hObject,iErrors,&lNumberOfErrors);
if (lResult ==
0)
MessageBox(hWnd,TEXT("Problem
Reading errors"),TEXT("neoVI
Example"),0);
// dump the neoVI
errors
if
(lNumberOfErrors > 0)
{
for
(lCount=0;lCount <lNumberOfErrors;lCount++)
{
wsprintf(szOut,TEXT("Error %d - "),iErrors[lCount]);
OutputDebugString(szOut);
icsneoGetErrorInfo(iErrors[lCount],szDescriptionShort,szDescriptionLong,
&lMaxLengthShort,&lMaxLengthLong,&lErrorSeverity,&lRestartNeeded);
OutputDebugString(szDescriptionShort);
OutputDebugString(TEXT("\n"));
}
}
else
OutputDebugString(TEXT("No
Errors to report\n"));
Visual Basic .NET Example
Public
Function
icsneoGetDLLErrorInfo(ByVal
lErrorNum As Int32,
ByRef sErrorShort
As
String,
ByRef sErrorLong
As
String,
ByRef lSeverity
As Int32,
ByRef bRestart
As Int32)
As
Boolean
Dim lErrorLongLength
As Int32
Dim
lErrorShortLength As
Int32
Dim lRestart
As Int32
Dim lResult
As Int32
sErrorLong = New
String(Chr(0), 255)
sErrorShort = New
String(Chr(0),
255)
lErrorLongLength = 255
lErrorShortLength = 255
lResult = icsneoGetErrorInfo(lErrorNum, sErrorShort,
sErrorLong, lErrorShortLength, lErrorLongLength, lSeverity, lRestart)
sErrorShort = Left(sErrorShort,
lErrorShortLength)
sErrorLong = Left(sErrorLong, lErrorLongLength)
bRestart =
CBool(lRestart)
icsneoGetDLLErrorInfo =
CBool(lResult)
End
Function
This function reads errors and loads them
into a list box
Private
Sub cmdGetErrors_Click(ByVal
sender As System.Object,
ByVal e As
System.EventArgs) Handles
cmdGetErrors.Click
Dim lResult As
Integer
'//Storage for result of Function Call
Dim lErrors(600) As Int32
'//Array for Error information
Dim lNumberOfErrors As
Integer
'//Storage for Number of Errors
Dim lCount As
Integer
'//Counter
Dim sErrorShort As
String
'//String Holding Short Error Name
Dim sErrorLong As
String
'//String Holding Long Error Name
Dim iSeverity As Int32
'//Storage for Level of error
Dim bRestart As Int32
'//flag for if Restart is required
'// Read Out the errors
lResult = icsneoGetErrorMessages(m_hObject, lErrors(0),
lNumberOfErrors)
'// Test the returned result
If Not
CBool(lResult)
Then
MsgBox("Problem Reading Errors")
Else
'//List Error information
lstErrorHolder.Items.Clear()
For lCount = 1
To lNumberOfErrors
Call
icsneoGetDLLErrorInfo(lErrors(lCount - 1), sErrorShort, sErrorLong, iSeverity,
bRestart)
lstErrorHolder.Items.Add(sErrorShort + " - Description" + _
sErrorLong + " - Errornum: " + Convert.ToString(lErrors(lCount - 1)))
Next lCount
End If
End Sub
IntrepidCS API Documentation - (C) Copyright 2000-2022 Intrepid Control Systems, Inc. (www.intrepidcs.com) |
Last Updated : Monday, November 09, 2020