AYUDA EN LÍNEA
 WINDEVWEBDEV Y WINDEV MOBILE

Este contenido se ha traducido automáticamente.  Haga clic aquí  para ver la versión en inglés.
Ayuda / WLanguage / Funciones WLanguage / Funciones estándar / Funciones de archivos externos
  • Error handling
  • Operating mode in Windows Vista (and later)
  • Encrypting/Decrypting a character string
WINDEV
WindowsLinuxJavaReportes y ConsultasCódigo de Usuario (UMC)
WEBDEV
WindowsLinuxPHPWEBDEV - Código Navegador
WINDEV Mobile
AndroidWidget Android iPhone/iPadIOS WidgetApple WatchMac Catalyst
Otros
Procedimientos almacenados
Advertencia
A partir de la versión 24, fCrypt se conserva por motivos de compatibilidad. Esta función ha sido reemplazada por fEncrypt.
Encrypts a file in binary or ASCII format.
Note This file can be decrypted with fDecrypt.
WINDEVWEBDEV - Código ServidorReportes y ConsultasJavaCódigo de Usuario (UMC)Ajax
// Encrypt a file
ResEncrypt = fEncrypt("C:\MyDirectories\File.txt", "C:\MyDirectories\EncryptedFile.txt", "Password")
Sintaxis
<Result> = fEncrypt(<Path of file to encrypt> , <Path of encrypted file> , <Password> [, <Type of encryption> [, <Format of encrypted file>]])
<Result>: Boolean
  • True if encryption has been performed,
  • False otherwise. To get more details on the error, use ErrorInfo with the errMessage constant.
<Path of file to encrypt>: Character string
Name and full (or relative) path of the file to encrypt (up to 260 characters). A UNC path can be used.
WindowsLinux This parameter can be in Ansi or Unicode format.
AndroidWidget Android This parameter can correspond to a full path or a path relative to the current directory (returned by fCurrentDir). This parameter is case-sensitive.
Reminder: In Android, the file system is read-only on the device and on the emulator. An application can only write to its installation directory or one of its subdirectories, as well as to the external memory (SDCard).
iPhone/iPadIOS WidgetMac Catalyst This parameter can correspond to a full path or a path relative to the current directory (returned by fCurrentDir). This parameter is case-sensitive.
Reminder: In iOS/iPadOS, the file system is read-only on the device and on the emulator. An application can only write to its installation directory or one of its subdirectories.
<Path of encrypted file>: Character string
Name and full (or relative) path of the encrypted file (up to 260 characters). A UNC path can be used.
WindowsLinux This parameter can be in Ansi or Unicode format.
AndroidWidget Android This parameter can correspond to a full path or a path relative to the current directory (returned by fCurrentDir). This parameter is case-sensitive.
Reminder: In Android, the file system is read-only on the device and on the emulator. An application can only write to its installation directory or one of its subdirectories, as well as to the external memory (SDCard).
iPhone/iPadIOS WidgetMac Catalyst This parameter can correspond to a full path or a path relative to the current directory (returned by fCurrentDir). This parameter is case-sensitive.
Reminder: In iOS/iPadOS, the file system is read-only on the device and on the emulator. An application can only write to its installation directory or one of its subdirectories.
<Password>: Character string or Secret string
Password used to encrypt the file. This password will be used to decrypt the encrypted file (fDecrypt). A long password provides better encryption security.
Novedad versión 2025
Cadenas secretas: Si utiliza el almacén de cadenas secretas, el tipo de cadena secreta utilizado para este parámetro debe ser "ANSI o Unicode string".
Para obtener más información sobre las cadenas secretas y el almacén, consulte Almacén de cadenas secretas.
Novedad versión 2025
AndroidWidget Android Las cadenas secretas no están disponibles para este parámetro en aplicaciones Android y widgets de Android.
<Type of encryption>: Optional constant
Indicates the type of encryption:
encryptFast
(Default value)
Priority is given to the encryption speed (algorithm on 128 bits).
Java The algorithm used will be a Blowfish algorithm.
AndroidWidget Android This constant is not available.
PHP The algorithm used will be a Blowfish algorithm with 16 rounds.
encryptNoneNo encryption is performed.
encryptRC516Priority is given to the encryption security (RC5 algorithm on 16 rounds).
AndroidWidget Android JavaPHP This constant has no effect.
encryptSecurePriority is given to the encryption security (RC5 algorithm on 128 bits).
AndroidWidget Android Java The algorithm used will be a PBE algorithm (Password Based Encryption).
PHP The algorithm used will be a 128-bit RIJNDAEL algorithm.
<Format of encrypted file>: Optional Integer constant
Indicates the format of the encrypted file:
encodeBASE64BASE 64 format.
The file is encrypted with the BASE64 algorithm. The encrypted file will be larger (about 30%) than the initial file.
This format can be used to insert an encrypted file into the email body for example.
encodeNone or FalseBinary format.
The encrypted file may contain non-printable characters. The file will be larger (about 4 bytes) than the initial file.
encodePCS or True
(Default value)
ASCII format.
The encrypted file will contain printable characters only. The encrypted file will be larger (about 30%) than the initial file.
This format can be used to insert an encrypted file into the email body for example.
encodeUUEncodeUUEncode format.
The file is encrypted with the UUEncode algorithm. The encrypted file will be larger (about 30%) than the initial file.
This format can be used to insert an encrypted file into the email body for example.

AndroidWidget Android Java This parameter is ignored.
Observaciones

Error handling

fEncrypt throws an error in the following cases:
  • the file to encrypt does not exist,
  • the file to encrypt is locked,
  • the path of the file to encrypt is invalid,
  • <Password> is an empty string,
  • the user has no read rights on the file to encrypt,
  • the user has no write rights on the encrypted file.
WINDEVWEBDEV - Código ServidorReportes y ConsultasCódigo de Usuario (UMC)

Operating mode in Windows Vista (and later)

If this function does not work properly in Windows Vista (and later), check whether the file or directory used is not in one of the system directories (Windows directory or "Program Files" directory).
In Windows Vista (and later), with the UAC mechanism (User Account Control) enabled, you must have administrator privileges to handle and/or modify the files or directories in system directories (Windows directory or "Program Files" directory).
Programming tip: If you need to manipulate / modify files or directories, without needing administrator privileges, it is advisable:
  • avoid writing to the Windows directory or to the "Program Files" directory,
  • use the system directory of the application (returned by SysDir with the srAppDataCommun constant, for example).
Remark: Under Windows Vista (and higher), the virtualization mechanism makes applications Vista-compatible.. If the file is created in a system directory without having sufficient rights, this file will actually be created in another directory (C:\Users\<LOGIN>AppData\Local\VirtualStore\Windows\). In this case, the file cannot be shared between several applications.

Encrypting/Decrypting a character string

To encrypt/decrypt a character string, use Encrypt and Decrypt.
PHP Encryption in PHP
In PHP, the BlowFish encryption (encryptFast constant) and the RINJDAEL encryption (encryptSecure constant) are based on the MCrypt library. This library is commonly used by the PHP hosting providers and therefore it is always enabled. This library can be downloaded from the PHP site.
To enable (if necessary) this library locally, the following elements are required:
  • PHP installed.
  • the PHP.INI file found in the Windows directory must include the "extension=php_mcrypt.dll" line.
  • the php_mcrypt.dll file must exist in the directory of PHP extensions. This directory is defined in the PHP.INI file by the "extension_dir" variable.
AndroidJava Encryption in Android/Java and decryption by a WINDEV application (or conversely)
Warning: the encryption/decryption algorithms used in Java and Android are not the same as those used by WINDEV. Therefore, you cannot encrypt a file in Java or Android and decrypt it with WINDEV and vice versa.
Componente: wd300std.dll
Versión mínima requerida
  • Versión 9
Esta página también está disponible para…
Comentarios
Haga clic en [Agregar] para publicar un comentario

Última modificación: 16/05/2025

Señalar un error o enviar una sugerencia | Ayuda local