NetCode Class

Properties   Methods   Events   Configuration Settings   Errors  

The NetCode class can be used to encode or decode files or strings using a variety of popular encoding formats such as: Base64, UUencode, URL, etc. UUEncode , MIME's Base64 Quoted-Printable , URL encoding formats, as well as secure hash functions such as MD5 and SHA1, are currently supported.

Syntax

NetCode

Remarks

The encoding format is specified by the Format property. The binary data, or the name of the file containing binary data, is specified by the DecodedData property and the encoded data or filename is specified by the EncodedData property. The FileName property may be used to override the default file names or to specify a directory during uuencoding. After uudecoding, the FileName property contains the fully specified file name of the decoded file.

Understanding Encoding/Decoding

Most of mail systems use only 7 bits to transmit messages. A binary file such as an archive or a non-plain text formatted file produced from a text processor should be first encoded in 7 bit code before email transfer.

Decoding is the inverse process: creation of the original file from the encoded data. Encoded data is often split over several files because of the size limit placed on the email message. Each message is preceded by information about this splitting, as well as the mail header. NetCode supports this case in both directions:

- During encoding setting the MaxFileSize config setting to the maximum size of a message body instructs NetCode to split the encoded data over several files. Multiple filenames can be specified by using question marks "?" (See the EncodedData property for more information).

- During decoding, the body messages can be saved in separate files named namexxx.ext where xxx is a numeral starting at 000 and ext is ".uue", ".b16", or ".q_p" according to Format. These multiple filenames should be given to EncodedData.

Property List


The following is the full list of the properties of the class with short descriptions. Click on the links for further details.

DecodedDataThe decoded data.
DecodedFileThe filename of the decoded data.
EncodedDataThe encoded data.
EncodedFileFilename of the encoded data.
FileCntShows the number of encoded files the class has read from or written into.
FileNameThe destination filename for the encoded data.
FormatThe type of encoding to be used.
ModeThe UNIX-style filemode when uuencoding / uudecoding.
OverwriteControls whether created file(s) should overwrite already existing file(s).
ProgressStepControls the granularity at which the Progress event is fired. Values 0-100.

Method List


The following is the full list of the methods of the class with short descriptions. Click on the links for further details.

ConfigSets or retrieves a configuration setting.
DecodeDecode string.
EncodeEncode the data.
ResetReset the class.
ResetDataResets the values of all data and stream properties.

Event List


The following is the full list of the events fired by the class with short descriptions. Click on the links for further details.

ErrorInformation about errors during data delivery.
ProgressOccurs when PercentDone of the input is read.

Configuration Settings


The following is a list of configuration settings for the class with short descriptions. Click on the links for further details.

Base64LineBreakTells the class whether to include line breaks in Base64 encoded content or not.
EncodeHashWhether the hash value is hex encoded.
HMACAlgorithmThe hash algorithm to use when generating a Hash-based Message Authentication Code (HMAC).
HMACKeyA key to use when generating a Hash-based Message Authentication Code (HMAC).
MaxFileSizeWhen encoding, controls whether encoded data should be split into several files and gives the maximum allowed size for these files.
UseExtendedHexBase32Specifies whether or not the Extended Hex alphabet is used.
UseModifiedUTF7Specifies whether or not a modified form of UTF-7 for IMAP mailbox naming is used.
BuildInfoInformation about the product's build.
CodePageThe system code page used for Unicode to Multibyte translations.
LicenseInfoInformation about the current license.
UseInternalSecurityAPITells the class whether or not to use the system security libraries or an internal implementation.

Copyright (c) 2022 /n software inc. - All rights reserved.
IPWorks 2020 Qt Edition - Version 20.0 [Build 8307]