Summary
If the FlexNet Embedded-enabled application produces an error during runtime it is often useful to track down the source of the error. To do this, the FlexNet Embedded API contains a number of function calls that can be used to return pertinent information about the error. This article provides information regarding these functions.
Discussion
Most FlxName functions follow the convention whereby a FlxBool is the return type and a FlxErrorRef parameter is passed as the last argument. The return value is FLX_TRUE if the function action was performed successfully and FLX_FALSE if it failed. In the case of failure, the FlxErrorRef object is filled with the relevant information.
An Error object contains the following information:
| Error Object | Information |
|---|---|
| Error category | Public, internal, or external. |
| Application error | Error code that represents a specific error condition. |
| System error | Error code returned by the OS or environment, if applicable. |
| Error location | Reference to the location in code where the error occurred. |
| External data | Additional error information set by the implementer in external functions. |
To retrieve the information contained in each of these objects use the following function calls:
FlxErrorGetErrorFlxErrorGetCategoryFlxErrorGetSystemFlxErrorGetLocationUnitFlxErrorGetLocationHint
Once the additional information has been retrieved using these codes, it should be possible to determine the category of the error.
FLXERRCAT_PUBLICFLXERRCAT_INTERNALFLXERRCAT_EXTERNALFLXERRCAT_CALLOUT
Public Category Errors
If the error is from the public category, then consult FlxErrorCode enumeration found in FlxError.h header file located in the include directory of the toolkit. The list contains the error code along with the comment describing the error, and will generally be an error which can be resolved by the publisher. Consult the appropriate publisher error documentation for information in helping to track down where the error is coming from. If further assistance is required then contact Revenera Support who may be able to help further in tracking down this error.
Internal Errors
If the category of the error is internal, then call the function FlxErrorGenerateReport and send the generated string through to Revenera Support who will assess this as a bug and report it to engineering.
Callout Errors
If the category is a callout error, consult FlxCalloutErrorCode enumeration in FlxError.h or ErrorDefs.h. Search callout code for use of that error code, and attempt to diagnose which callout operation failed.
A call to FlxErrorGetLocationUnit should return a member of the enumeration FlxCalloutUnitIdentifier which should help you track down the right source file, whilst FlxErrorGetLocationHint should match the value passed in the call to FlxSetCalloutError.
External Errors
If the category is an external error, then the code is publisher-specific and Revenera would not have any information regarding this error. When an external error is reported using FlxSetExternalError, the "location" parameter is publisher-specific and should be used to enable them to track down the error.
Related Articles
FlexNet Embedded Error: 7000001e (Signature didn't pass validation) 17Number of Views FlexNet Operations UAT Issue (05 May 2022): FlexNet Operations LLM Customers Using FlexNet Embedded Licensing 15Number of Views Flexnet Embedded License Servers REST APIs 19Number of Views System Machine Type Does Not Match Expected Machine Type 14Number of Views Is it Possible to Change the Hositd that the Prebuilt Flexnet Embedded License Server Uses? 5Number of Views
Hi, I am Reva - Ask me anything.
No new updates
Thanks for the feedback!
Your feedback has been saved.Rate this response:
Add Additional feedback ( Optional )
Are you sure you want to cancel
the case creation?
Are you sure you want to cancel the case creation?
Are you sure you want to close this case
| Products | Region | Phone Numbers |
|---|---|---|
| FlexNet Operations FlexNet Embedded FlexNet Publisher FlexNet Connect FlexNet Code Insight InstallAnywhere InstallShield |
North America * |
+1 630-332-2513 (toll) +1 877-279-2853 (toll-free in North America) |
| Europe * |
+44 1925 944367 (toll) +44 800 047 8642 (toll-free in Europe) |
|
| Japan * | +81 3-4540-5335 (select option 2) | |
| Australia * |
+61 3 9895 2177 +61 1800 560 603 (toll-free in Australia) |
|
|
Usage Intelligence (formerly
Revulytics) Compliance Intelligence |
Please use the Case Portal to submit your support ticket or reach out to your Revenera contact. | |
Case id: 00001065
Activity: Status change: 2 hours ago