/// <summary>
        /// Activates your licenses using the offline activation response file.
        /// </summary>
        /// <param name="filePath">path of the offline activation response file</param>
        /// <returns>LA_OK, LA_EXPIRED, LA_SUSPENDED, LA_FAIL</returns>
        public static int ActivateLicenseOffline(string filePath)
        {
            int status;

            if (LexActivatorNative.IsWindows())
            {
                status = IntPtr.Size == 4 ? LexActivatorNative.ActivateLicenseOffline_x86(filePath) : LexActivatorNative.ActivateLicenseOffline(filePath);
            }
            else
            {
                status = LexActivatorNative.ActivateLicenseOfflineA(filePath);
            }
            switch (status)
            {
            case LexStatusCodes.LA_OK:
                return(LexStatusCodes.LA_OK);

            case LexStatusCodes.LA_EXPIRED:
                return(LexStatusCodes.LA_EXPIRED);

            case LexStatusCodes.LA_SUSPENDED:
                return(LexStatusCodes.LA_SUSPENDED);

            case LexStatusCodes.LA_FAIL:
                return(LexStatusCodes.LA_FAIL);

            default:
                throw new LexActivatorException(status);
            }
        }