FoxPro Examples

ChilkatHOMEAndroid™ASPVisual BasicVB.NETC#iOS (IPhone)Objective-CC++CMFCDelphiFoxProJavaPerl
PHP ExtensionPHP ActiveXPythonPowerShellRubySQL ServerVBScript

Visual FoxPro Examples

Bounced Mail
Bz2
Character Encoding
CSV
Digital Certificates
Digital Signatures
Email
Email Object
FTP
HTML Conversion
HTTP
IMAP
Encryption
MHT / HTML Email
POP3
RSA
S/MIME
Socket
Spider
SFTP
SMTP
SSH
SSH Key
SSH Tunnel
String
Tar
Upload
XML
XMP
Zip Compression
Self-Extractor

More Examples...
Amazon S3
DKIM / DomainKey
NTLM
RSS
Atom
Byte Array
Service
PPMD
Deflate
DH Key Exchange
DSA
FileAccess
Bzip2
LZW

 

Non-Chilkat Links
Text and String Handling

Encrypt File to PKCS7 .p7m

Visual FoxPro example to public-key encrypt a file creating a PKCS#7 .p7m file as output. Also demonstrates how to decrypt the .p7m to recover the original file.

Download Chilkat Crypt ActiveX

LOCAL loCrypt
LOCAL lnSuccess
LOCAL loEncryptCert
LOCAL lcInFile
LOCAL lcOutFile
LOCAL loDecrypt
LOCAL lcPfxFilename
LOCAL lcPfxPassword

loCrypt = CreateObject('Chilkat.Crypt2')

*  Any string argument automatically begins the 30-day trial.

lnSuccess = loCrypt.UnlockComponent("30-day trial")
IF (lnSuccess <> 1) THEN
    ? loCrypt.LastErrorText
    QUIT
ENDIF

*  Indicate the public-key encryption is to be used.
*  Do this by setting the encryption algorithm equal
*  to "PKI" (an acroynm for public-key infrastructure).
loCrypt.CryptAlgorithm = "PKI"

*  Indicate the inner symmetric encryption algorithm to be used.
*  possible values are "aes", "des", "3des", and "rc2".
*  For this example, we'll use 256-bit AES encryption.
loCrypt.Pkcs7CryptAlg = "aes"
loCrypt.KeyLength = 256

*  To encrypt, only a certificate w/ public key is needed.
*  (The certificate w/ private key is required for decryption.)

*  The LoadFromFile method can load virtually any certificate format:
*  1. DER encoded binary X.509 (.CER)
*  2. Base-64 encoded X.509 (.CER)
*  3. Cryptographic Message Syntax Standard - PKCS #7 Certificates (.P7B)
*  4. PEM format
loEncryptCert = CreateObject('Chilkat.Cert')
lnSuccess = loEncryptCert.LoadFromFile("/Users/chilkat/testData/cer/acme.cer")
IF (lnSuccess <> 1) THEN
    ? loEncryptCert.LastErrorText
    QUIT
ENDIF

*  Tell the crypt object to use the certificate for encrypting:
loCrypt.AddEncryptCert(loEncryptCert)

*  Encrypt a file, producing a .p7m as output.
*  The input file is unchanged, the output .p7m contains the encrypted
*  contents of the input file.

lcInFile = "/Users/chilkat/testData/pdf/sample.pdf"

lcOutFile = "/Users/chilkat/testData/p7m/sample.pdf.p7m"
lnSuccess = loCrypt.CkEncryptFile(lcInFile,lcOutFile)
IF (lnSuccess <> 1) THEN
    ? loCrypt.LastErrorText
    QUIT
ENDIF

*  For demonstration purposes, a different instance of the object will be used
*  for decryption.
loDecrypt = CreateObject('Chilkat.Crypt2')

*  To decrypt, the certificate w/ private key is required.  A PFX (also known
*  as PKCS#12) is a common secure container for certs and private keys.

lcPfxFilename = "/Users/chilkat/testData/pfx/acme.pfx"

lcPfxPassword = "secret"

*  Tell the component to look in the PFX file for certs and private keys.
lnSuccess = loDecrypt.AddPfxSourceFile(lcPfxFilename,lcPfxPassword)
IF (lnSuccess <> 1) THEN
    ? loDecrypt.LastErrorText
    QUIT
ENDIF

*  Tell the decrypt object that PKI (public key encryption) is to be used
*  for decryptiong.
loDecrypt.CryptAlgorithm = "PKI"
*  There is no need to set the Pkcs7Alg or KeyLength because this information
*  is contained within the .p7m

*  Decrypt the .p7m
lcInFile = "/Users/chilkat/testData/p7m/sample.pdf.p7m"
lcOutFile = "/Users/chilkat/testData/pdf/recovered.pdf"
lnSuccess = loDecrypt.CkDecryptFile(lcInFile,lcOutFile)
IF (lnSuccess = 0) THEN
    ? loDecrypt.LastErrorText
    QUIT
ENDIF

=MESSAGEBOX("Success!")

© 2000-2010 Chilkat Software, Inc. All Rights Reserved.

Mail Component · .NET Email Component · ASP Mail Component · XML Parser