# Introduction

The enumerated types are in `adinfo.h`, `kvcharset.h`, `kverrorcodes.h`, `kvtypes.h`, `kv.h`, and `kvxtract.h`. These header files are in the `include` directory. The first entry in an enumerated type structure should be set to zero (0). Each subsequent entry is increased by 1. For example, the first five entries of `KVCharSet` in `kvcharset.h` are:

    KVCS_UNKNOWN

    KVCS_SJIS

    KVCS_GB

    KVCS_BIG5

    KVCS_KSC

They would be set in the following way:

Enumerated Type | Setting
`KVCS_UNKNOWN` | `0`
`KVCS_SJIS` | `1`
`KVCS_GB` | `2`
`KVCS_BIG5` | `3`
`KVCS_KSC` | `4`

You can also set many enumerated types by entering the appropriate symbolic constant, or `TRUE` or `FALSE`.

## Programming Guidelines

When KeyView is enhanced in future releases, some enumerated types might be expanded. For example, new format IDs might be added to the `ENdocFmt` enumerated type, or new error codes might be added to the `KVErrorCodeEx` enumerated type. When you use these expandable types, your code should ensure binary compatibility with future releases.

For example, if you use an array to access error messages based on an error code, your code should check that the error code is less than `KVError_Last` before accessing the data. This ensures that new error codes are detected when you add KeyView binary files from new releases to your existing installation.

The following enumerated types are expandable:

    KVErrorCodeEx

    KVMetadataType

    KVCharSet

    KVLanguageID

    KVSubfileType

    ENdocFmt

© Copyright 2016-2020 Micro Focus or one of its affiliates | Send documentation feedback Close Send documentation feedback To open the configured email client on this computer, open an email window. Otherwise, copy the information below to a mail client, and then send this email to swpdl.idoldocsfeedback@microfocus.com. We appreciate your feedback! Product: Topic Title: Help Topic: Feedback:

_FT_HTML5_bannerTitle.htm