# KVPanopticonError

This enumerated type defines the type of error generated if Panopticon fails.

    typedef enum tag_KVPanopticonError
    {
       KVP_Success = 0,
       KVP_ERR_GeneralError = 1,
       KVP_ERR_MemoryError = 2,
       KVP_ERR_InvalidArguments = 3,
       KVP_ERR_StructureNotInitialised = 4,
       KVP_ERR_LicenseInvalid = 5,
       KVP_ERR_LicenseExpired = 6,
       KVP_ERR_DllNotFound = 7,
       KVP_ERR_DllLoadFailed = 8,
       KVP_ERR_TempFolderDoesNotExist = 9,
       KVP_ERR_CreateTempFileFailed = 10,
       KVP_ERR_InputFileNotFound = 11,
       KVP_ERR_FormatNotRecognised = 12,
       KVP_ERR_ParseContainerError = 13,
       KVP_ERR_ParseEncryptedFileError = 14,
       KVP_ERR_WriteDecryptedFileError = 15,
       KVP_ERR_CannotCreateOutputFile = 16,
       KVP_ERR_DecryptionNotSupported = 17,
       KVP_ERR_InvalidConfig = 18,
       KVP_ERR_ConnectionFailure = 19,

       KVP_ERR_RMS_DecryptionFailed = 100,
       KVP_ERR_RMS_NotConfigured = 101,
       KVP_ERR_RMS_InvalidFileStructure = 102,
       KVP_ERR_RMS_MicrosoftServerError = 103,
       KVP_ERR_RMS_InvalidCredentials = 104,
       KVP_ERR_RMS_IncorrectCredentials = 105
    } KVPanopticonError;

## Enumerators

`KVP_Success` | The function completed successfully.
`KVP_ERR_GeneralError` | General error.
`KVP_ERR_MemoryError` | A memory error occurred.
`KVP_ERR_InvalidArgument` | An argument to a Panopticon API function was invalid. For example, a required pointer was NULL.
`KVP_ERR_StructureNotInitialised` | A structure passed to a Panopticon API function was invalid. All structures containing a KVStructHead member must be initialized with `KVStructInit`.
`KVP_ERR_LicenseInvalid` | The license provided to init() was invalid.
`KVP_ERR_LicenseExpired` | The license provided to init() has expired.
`KVP_ERR_DllNotFound` | A DLL or shared library was not found.
`KVP_ERR_DllLoadFailed` | A DLL or shared library failed to load correctly.
`KVP_ERR_TempFolderDoesNotExist` | The specified temp folder does not exist.
`KVP_ERR_CreateTempFileFailed` | Panopticon was unable to create a temporary file in the temp folder.
`KVP_ERR_InputFileNotFound` | The specified input file was not found.
`KVP_ERR_ FormatNotRecognised` | Panopticon did not recognize the file format of the specified input.
`KVP_ERR_ParseContainerError` | Panopticon was unable to process a container file that might contain an encrypted subfile.
`KVP_ERR_ ParseEncryptedFileError` | During text-only decryption, Panopticon was unable to obtain the text content from the file.
`KVP_ERR_ WriteDecryptedFileError` | During text-only decryption, Panopticon was unable to write the decrypted content to a new file.
`KVP_ERR_CannotCreateOutputFile` | An output file could not be created at the specified location.
`KVP_ERR_DecryptionNotSupported` | Decryption of the specified input file is not supported.
`KVP_ERR_InvalidConfig` | The Panopticon configuration file is invalid.
`KVP_ERR_ConnectionFailure` | A required HTTP call was not successful.
`KVP_ERR_RMS_DecryptionFailed` | Decryption of the RMS encrypted file failed.
`KVP_ERR_RMS_NotConfigured` | decryptFile() was called on an RMS encrypted file, without credentials being supplied through configureRMS().
`KVP_ERR_RMS_InvalidFileStructure` | The structure of the input file was not valid.
`KVP_ERR_RMS_MicrosoftServerError` | Microsoft Server Error (Request returned HTTP 500).
`KVP_ERR_RMS_InvalidCredentials` | The RMS credentials provided are not valid.
`KVP_ERR_RMS_IncorrectCredentials` | The RMS credentials provided are valid but are not the correct credentials for decrypting this file.

_FT_HTML5_bannerTitle.htm