Sergey's blog

How to delete all Print Jobs from a print queue

All jobs from a print queue can be deleted with

Commenting via shortcut keys in VFP

The comment/uncomment items on the Format menu do not have shortcut keys but they have access keys assigned. Pressing ALT+om and ALT+on on a keyboard will comment/uncomment selected text respectively.

Send email via Gmail account

Gmail SMTP server requires SSL connection on port 465.

Known Gmail limits on sending emails:

  • An attachment size is limited to 25 MB
  • An individual email can be sent to maximum of 100 recipients
  • A large number of undeliverable messages could trigger an account lockdown

Exceeding any limits beside the attachment size will cause Gmail account to be locked down for 24-72 hours.

CDO 2000 constants

CDO 2000 constants and enumerations

* Cdo2000.h
#DEFINE cdoDefaults -1 && Load all applicable default values from both Outlook Express (OE) and Internet Information Services.
#DEFINE cdoIIS 1 && Load configuration default values from the local Internet Information Service.
#DEFINE cdoOutlookExpress 2 && Load configuration values from the default identify of the default Outlook Express account.
#DEFINE cdoDSNDefault 0 && No DSN commands are issued.
#DEFINE cdoDSNNever 1 && No DSNs are issued.
#DEFINE cdoDSNFailure 2 && Return an DSN if delivery fails.

Send email with CDO 2000

It's simple and convenient to send unattended email with CDO 2000 as long as there's a SMTP server available.

Note 1 Uses CDO 2000 class for sending emails

CDO 2000 class for sending emails

The CDO2000 class allows to send emails w/o user intervention using a SMTP server.

An example on how to use the class can be found at CDO 2000 class for sending emails.

Note 1 CDO 2000 is included in Windows 2000 and later.

Note 2 A character set of any body part is controlled by Charset property. The default is "us-ascii".

Queries and functions which accept alias as parameter


The functions such as DELETED(), RECNO(), etc., which accept an optional workarea alias, could yield unexpected results when used in queries incorrectly.

AError() function returns extended information for errors 1104 and 1105 in Visual FoxPro 9.0 SP2

Visual FoxPro 9.0 Service Pack 2 improves the capability of the AError() function for errors 1104 - Error reading file, and 1105 - Error writing file. For these errors only, the array produced by AError() contains additional error information consisting of the underlying operating system error number and error text. The error number and error text are stored in the AError() array, elements 6 and 7 respectively.

This additional error information corresponds to the values returned by the Windows API function GetLastError().

Retrieving version of VFP OLE DB provider

A version of VFP OLE DB provider installed on computer can be retrieved from provider itself or from its DLL through the registry.

Not enough memory for file map (Error 1150)

The explanation for the error isn't too helpful and even confusing as the error often shows up on computers with plenty of memory.


Subscribe to RSS - Sergey's blog