Chapter 21

Other Controls


CONTENTS

This chapter is a conglomerate of controls that do not fit strictly into any categories. Most of the controls are communication-related such as the TCP/IP, MIME, SMTP, and so on. These controls will be useful when you want to develop systems such as electronic drop-in boxes, Web presence, interface to legacy systems, and even specialized electronic mail systems.

Internet Explorer

The Microsoft Internet Explorer Web browser object theoretically cannot be inserted into your Web page by using the ActiveX Control Pad; however, you can program this object as any other control in your VBScript or JavaScript. Usually, the Internet Explorer object is the parent object for all your controls.

Source

Vendor: Microsoft Corporation.

http://www.microsoft.com/activex/gallery

Figure 21.1 : The Internet Explorer control

Properties

Table 21.1  Properties of the Internet Explorer Control Object

PropertyDescription
ApplicationThe control container OLE automation object
BusyThe state of the object
ContainerThe container application of the control, if any
DocumentThe OLE automation/active document of the object
FullNameThe full name of the executable that contains this control/object
FullScreenThe state indicating whether the screen is maximized or minimized
HeightThe vertical height of the object
hWNDThe handle of the Internet Explorer main window
LeftThe distance between the left edge of the browser and the left edge of the container
LocationNameThe name of the current page location
LocationURLThe URL where the current page is located
MenuBarTrue, if the menu is visible
NameThe name of the application
ParentThe next upper-level object, if any
PathThe full path name of the application
StatusBarSet these properties to True to make the status bar visible
StatusTextSet to True to make the Status bar text visible
WidthThe width of the control, in points

Methods

Table 21.2  Methods of the Internet Explorer Control Object

MethodDescription
ClientToWindowConverts the coordinates that are relative to the top-left corner of the IE client area to the top-left corner of the window
GetPropertyGets the value of a property of the object
GoBackNavigates to the previous URL in the history list
GoForwardNavigates to the next URL in the history list
GoHomeNavigates to the home/start URL
GoSearchNavigates to the search URL
NavigateNavigates to a specified URL
PutPropertyAssigns or changes the property value of an object
QuitCloses the Internet Explorer Web browser object
RefreshReloads the current Web page
Refresh2Reloads the current Web page (with more control through the VBScript or JavaScript)
StopHalts the current and pending Web operations

Events

Table 21.3  The Events of the Internet Explorer Control Object

EventDescription
OnBeginNavigateTriggers when the Web browser starts to navigate to an URL
OnCommandStateChangeTriggers when a command changes state
OnDownloadBeginTriggers just before the start of a Web page downloading
OnDownloadCompleteTriggers just after a Web page is downloaded
onLoadTriggers after an HTML layout is created
OnNavigateTriggers when the Web browser navigates to an URL
OnNewWindowTriggers just before a new display window is created by the Web browser
OnProgressTriggers when the progress of a download operation is updated by the Web browser
OnPropertyChangeTriggers when the PutProperty method changes the value of a property
OnQuitTriggers when the Internet Explorer object is ready to quit
OnStatusTextChangeTriggers after the text in the status bar is changed
OnWindowActivatedTriggers at the activation of the Internet Explorer object's main window
OnWindowMoveTriggers after the Internet Explorer object's main window is moved
OnWindowSizedTriggers when the Internet Explorer object's main window is resized

Examples


<HTML>

<HEAD>

<TITLE>New Page</TITLE>

</HEAD>

<BODY>

    <SCRIPT LANGUAGE="VBScript">

<!--

Sub WebBrowser1_ProgressChange(Progress, ProgressMax)

' You can build a progress bar with the ProgressMax

' as the width and the Progress as the current progress

' value

end sub

Sub WebBrowser1_Quit(Cancel)

' Some code before the browser object closes

end sub

-->

    </SCRIPT>

    <OBJECT ID="WebBrowser1" WIDTH=525 HEIGHT=278

     CLASSID="CLSID:EAB22AC3-30C1-11CF-A7EB-0000C05BAE0B">

        <PARAM NAME="Height" VALUE="278">

        <PARAM NAME="Width" VALUE="525">

        <PARAM NAME="AutoSize" VALUE="0">

        <PARAM NAME="ViewMode" VALUE="1">

        <PARAM NAME="AutoSizePercentage" VALUE="0">

        <PARAM NAME="AutoArrange" VALUE="1">

        <PARAM NAME="NoClientEdge" VALUE="1">

        <PARAM NAME="AlignLeft" VALUE="0">

    </OBJECT>

</BODY>

</HTML>

Notes

This is the top-level object.

FTP Control

The Crescent Internet ToolPak File Transfer Protocol (CIFTP) control implements the RFC 959 FTP in an ActiveX control. With the FTP control, you can build customized FTP applications to copy files to and from FTP servers, monitor and recognize FTP sites for changes, and so on. The CIFTP has events, methods, and properties that give access to low-level FTP interactions such as opening an FTP site, providing a password, and so on. The CIFTP also supports high-level aggregate functions or tasks such as downloading a file from an FTP server or getting a directory listing from the FTP server.

Source

Vendor: Crescent Software, a Division of Progress Software

http://crescent.progress.com

This is a back-end control, so there is no graphic for this control during the runtime.

Properties

Table 21.4  Properties of the FTP Control

PropertyDescription
AccessPortThe control channel port number
CodebaseThe origin of the control, including the URL, file type, and version number
DataPortThe data channel port number
DirectoryListBoxNameThe list box to populate a remote FTP server directory
EventStateThe current status of the control
FileListBoxNameThe list box populated by remote FTP server file names
HeightThe vertical height of the object
HostAddressThe IP address of the FTP server
HostNameThe DNS name of the FTP server
IDThe name of this FTP control
LeftThe distance between the left edge of the control and the left edge of the HTML layout
LocalFileNameThe full path and file name for the client
LoginNameThe FTP logon name
MethodStateThe ID of the currently running method
PasswordThe FTP password
RemoteFileNameThe file name at the FTP server
RepresentationTypeThe data stream type (A-ACCII, B-Binary, E-EBCDIC)
ServerOSTypeThe FTP server's operating system
TopThe distance between the top edge of the control and the top edge of the HTML layout
WidthThe width of the control, in points
WorkingDirectoryThe FTP server's current working directory

Methods

Table 21.5  Methods of the FTP Control

MethodDescription
CDUPMoves the current directory up one; no effect if the current directory is the root
CleanupConnectionCloses the socket and cleans up the WINSOCK. For normal operations, you should use the QUIT method. This is used only as a final resort
ConnectToAccessControlChannel Establishes a connection to an FTP server control channel
ConnectToDataChannelEstablishes a connection to the data channel of an FTP server
CWDChanges the current working directory in the remote FTP server
GetDirectoryGets a directory listing from the FTP server; this is a higher-level function
GetFileRetrieves a file from the FTP server; this is a higher-level function
LISTGets a directory of the current working directory in the FTP server
PASSSends the password to the FTP server
PASVGets a data port from the FTP server
PutFileSends a local file to the FTP server; this is a higher-level function.
PWDGets the present working directory in the FTP server
QUITEnds an FTP session with an FTP server
RETRUpdates a local file from the FTP server
SendFTPCommandSends an arbitrary FTP command (not implemented by this control) to the server
STORSends a local file to the FTP server
SYSTGets the system name from the FTP server
TYPESets binary or ACSII stream type
USERSends a user name to the FTP server
ZorderThe object is positioned in the container at the front or back

Events

Table 21.6  Events for the FTP Control

EventDescription
AccessControlChannelClosedTriggers when the FTP connection is closed
AccessControlChannelConnection Triggers when the FTP connection to a control channel is established
AccessControlPacketReceivedTriggers when a control packet is received across the control channel
AccessControlPacketSentTriggers when a control packet is sent across the control channel
DataControlChannelClosedTriggers when a data channel is closed
DataControlChannelConnectionTriggers when the FTP connection to a data channel is established
DataControlPacketReceivedTriggers when a packet is received across the data channel
DataPortSetTriggers when the PASV method populates the DataPort property
EventStateChangedTriggers when the EventState property of any of the events change
FileClosedTriggers when the local file stream is closed
GotDirectoryTriggers when the GetDirectory method successfully completes
GotFileTriggers when the GetFile method successfully completes
InternetErrorTriggers when an error occurs in the high level methods
ListBoxesPopulatedTriggers when a DirectoryListBox or FileListBox object is populated
MethodStateChangedTriggers when any of the method state changes
PutFileTriggers when the PutFile method successfully completes
SocketClosedTriggers after a socket is closed
TotalFileBytesReceivedTriggers after every data packet is received with the updated bytes received value
WSAErrorTriggers when the FTP control encounters a WINSOCK error

Example


<OBJECT ID="CIFTP1" WIDTH=100 HEIGHT=50

 CLASSID="CLSID:3E222583-0E36-11CF-8576-0080C7973784">

    <PARAM NAME="_Version" VALUE="65536">

    <PARAM NAME="_ExtentX" VALUE="2117">

    <PARAM NAME="_ExtentY" VALUE="1058">

    <PARAM NAME="_StockProps" VALUE="0">

    <PARAM NAME="AccessChannelConnectionWAV" VALUE="">

    <PARAM NAME="AccessChannelClosedWAV" VALUE="">

    <PARAM NAME="DataChannelConnectionWAV" VALUE="">

    <PARAM NAME="DataChannelClosedWAV" VALUE="">

    <PARAM NAME="FileClosedWAV" VALUE="">

    <PARAM NAME="ListBoxesPopulatedWAV" VALUE="">

    <PARAM NAME="SocketClosedWAV" VALUE="">

    <PARAM NAME="WSAErrorWAV" VALUE="">

    <PARAM NAME="HostName" VALUE="ftp://ftp.mcp.com">

    <PARAM NAME="HostAddress" VALUE="">

    <PARAM NAME="RemoteFileName" VALUE="">

    <PARAM NAME="LoginName" VALUE="">

    <PARAM NAME="Password" VALUE="">

    <PARAM NAME="RepresentationType" VALUE="">

    <PARAM NAME="WorkingDirectory" VALUE="">

</OBJECT>

HTTP Control

The Crescent Internet HTTP (CIHTTP) control provides a very versatile Web browser object. Its functionality includes the capability to retrieve and send data to any Web site as well as get header and other information about the Web sites. The CIHTTP also has capabilities to parse the retrieved data and to pipe the data to other controls.

The CIHTTP control is well-suited for Web crawler applications, Web data retrieval and data-entry back-end applications, and so on.

Source

Vendor: Crescent Software, a Division of Progress Software

http://crescent.progress.com

Properties

Table 21.7  Properties of the HTTP Control

PropertyDescription
CodebaseThe origin of the control, including the URL, file type, and version number
EventStateThe ID of the control event in progress
HeightThe vertical height of the object
HostAddressThe IP address of the HTTP server
HostNameThe DNS name of the HTTP server
HTMLPageTextWithoutTagsThe parsed Web page without HTML formatting tags
HTMLPageTextWithTagsThe parsed Web page with HTML formatting tags
HTTPPortThe port used for the HTTP access
IDThe name of this HTTP control
LeftThe distance between the left edge of the control and the left edge of the HTML layout
LocalFileNameThe full path and file name for the client
MethodStateThe ID of the currently running method
ParseIncomingDataSet to True, to parse the Web data based on HTML codes
ProxyServerAddressIP address of the Web proxy server, which is usually a firewall
ProxyServerNameThe DNS name of the Web proxy server, which is usually a firewall
TopThe distance between the top edge of the control and the top edge of the HTML layout
URLThe URL for the current request
WidthThe width of the control, in points
WWWSiteNameThe name of the current Web page

Methods

Table 21.8  Methods of the HTTP Control

MethodDescription
CleanupConnectionCloses the socket and cleans up the WINSOCK; for normal operations, you should use the QUIT method; this is used only as a final resort
ConnectToHTTPServerEstablishes a connection to an HTTP server
GETRetrieves a Web page
HEADRetrieves the header information from a Web site
POSTSends data to an HTTP server
SendHTTPCommandSends an arbitrary HTTP command (not implemented by this control) to the server
ZorderThe object is positioned in the container at the front or back

Events

Table 21.9  Events of the HTTP Control

EventDescription
EventStateChangedTriggers when the EventState property of any of the events change
FileClosedTriggers when the local file stream is closed
HTTPServerConnectionClosedTriggers when a connection to the HTTP server is closed
HTTPServerConnectionTriggers when a connection to the HTTP server is established
ListBoxesPopulatedTriggers when an AnchorListBox, ImageListBox, or TagListBox object is populated
MethodStateChangedTriggers when any of the method state changes
PacketReceivedTriggers when a data packet is received from the HTTP server
PacketSentTriggers when a data packet is sent to the HTTP server
SocketClosedTriggers after a socket is closed
TotalFileBytesReceivedTriggers after every data packet is received with the updated bytes received value
WSAErrorTriggers when the HTTP control encounters a WINSOCK error

Example


<OBJECT ID="CIHTTP1" WIDTH=100 HEIGHT=50

 CLASSID="CLSID:DE90AEA3-1461-11CF-858F-0080C7973784">

    <PARAM NAME="_Version" VALUE="65536">

    <PARAM NAME="_ExtentX" VALUE="2117">

    <PARAM NAME="_ExtentY" VALUE="1058">

    <PARAM NAME="_StockProps" VALUE="0">

    <PARAM NAME="FileClosedWAV" VALUE="">

    <PARAM NAME="HTTPServerConnectionWAV" VALUE="">

    <PARAM NAME="HTTPServerConnectionClosedWAV" VALUE="">

    <PARAM NAME="ListBoxesPopulatedWAV" VALUE="">

    <PARAM NAME="PacketReceivedWAV" VALUE="">

    <PARAM NAME="PacketSentWAV" VALUE="">

    <PARAM NAME="SocketClosedWAV" VALUE="">

    <PARAM NAME="WSAErrorWAV" VALUE="">

    <PARAM NAME="URL" VALUE="">

    <PARAM NAME="HostName" VALUE="">

    <PARAM NAME="HostAddress" VALUE="">

    <PARAM NAME="ProxyServerName" VALUE="">

    <PARAM NAME="ProxyServerAddress" VALUE="">

</OBJECT>

MIME Control

The Crescent Internet ToolPak MIME control implements the MIME capabilities as per RFCs 1521 and 1522. The control can be used to encode and decode files according to the MIME standard.

Source

Vendor: Crescent Software, a Division of Progress Software

http://crescent.progress.com

Properties

Table 21.10  Properties of the MIME Control

PropertyDescription
CodebaseThe origin of the control, including the URL, file type, and version number
ContentTypeThe type of the data
DestinationFileNameThe full path and file name for the result file
DestinationFileSizeThe size of the result file
FileStatusSet to True to trigger encoded and decoded events
SourceFileNameThe source file name for encode or decode operations
SourceFileSizeThe size of the source file

Methods

Table 21.11  Methods of the MIME Control

MethodDescription
MIMEDecodeCode a file using the MIME standards
MEMEDecodeDecode a MIME-coded file

Events

Table 21.12  Events of the MIME Control

EventDescription
DecodedTriggers after a MIME file is converted
DecodingFinishedTriggers at the end of the decoding process
DecodingStartedTriggers at the beginning of the decoding process
EncodedTriggers after a file is converted as per MIME standards
EncodingFinishedTriggers at the end of the encoding process
EncodingStartedTriggers at the beginning of the encoding process

Example


<OBJECT ID="CIMIME1" WIDTH=100 HEIGHT=50

 CLASSID="CLSID:22E7B463-8C01-11CF-A07E-444553540000">

    <PARAM NAME="_Version" VALUE="65536">

    <PARAM NAME="_ExtentX" VALUE="2117">

    <PARAM NAME="_ExtentY" VALUE="1058">

    <PARAM NAME="_StockProps" VALUE="0">

    <PARAM NAME="SourceFilename" VALUE="">

    <PARAM NAME="DestinationFilename" VALUE="">

</OBJECT>

NNTP Control

The Crescent Internet ToolPak Network News Transfer Protocol (CINEWS) control implements RFC 977 in an ActiveX control. With the CINEWS control, you can build customized news retrieval, posting, and other news feed applications.

Source

Vendor: Crescent Software, a Division of Progress Software

http://crescent.progress.com

Properties

Table 21.13  Properties of the NNTP Control

PropertyDescription
ArticleBodyThe contents of one news item
ArticleHeaderThe header of one news item
ArticleNumberThe sequence number of the article to be retrieved
CodebaseThe origin of the control, including the URL, file type, and version number
DateThe news date
DistributionsList of news subjects for which news can be retrieved
EventStateThe current status of the control
FirstArticleThe number of the topmost article in the requested group
HeightThe vertical height of the object
HostAddressThe IP address of the news server
HostNameThe DNS name of the news server
IDThe name of this control
LastArticleThe number of the bottommost article in the requested group
LeftThe distance between the left edge of the control and the left edge of the HTML layout
ListGroupNamesOnlyThis property has to be set to True to list only the newsgroup names
LocalFileNameThe full path and file name for the client news file
MessageIDThe message ID of the news article
MethodStateThe ID of the currently running method
NewsGroupThe newsgroup name
NNTPPortThe news port name
ParseIncomingDataThis property has to be set to True to parse the incoming data
TimeThe news time
TopThe distance between the top edge of the control and the top edge of the HTML layout
TotalArticlesThe number of articles in the current newsgroup
TotalGroupsThe number of groups available in the news server
WidthThe width of the control, in points

Methods

Table 21.14  Methods of the NNTP Control

MethodDescription
ArticleFetches the article header and body
BodyFetches the body of an article
CleanupConnectionCloses the socket and cleans up the WINSOCK; for normal operations, you should use the QUIT method; this is used only as a final resort
ConnectToNNTPServerEstablishes a connection to a news server
GroupFetches the group counters-FirstArticle, LastArticle, and TotalArticles
HeadFetches the head of a news article
LastSets the news pointer to the previous article
ListFetches a list of groups
NewsGroupsFetches the list of groups created since the specified date and time
NewNewsFetches the news list created since the specified date and time
NextSets the news pointer to the next news article
POSTSends a news article to a group
QUITEnds connection with a news server
RETRUpdates a local file from the NNTP server
SlaveSends a notification that the client is a slave server, not an individual user
STATSets the news pointer to a specified news article
ZorderThe object is positioned in the container at the front or back

Events

Table 21.15  Events of the NNTP Control

EventDescription
ArticleReceivedTriggers when a news article is received
EventStateChangedTriggers when the EventState property of any of the events changes
FileClosedTriggers when the local file stream is closed
GroupInformationReceivedTriggers when the FirstArticle, LastArticle, and TotalArticles properties are refreshed
MethodStateChangedTriggers when any of the method state changes
NNTPConnectionTriggers after a news server connection is established
NNTPConnectionClosedTriggers after a news server connection is closed
PacketReceivedTriggers when a data packet is received from the news server
PacketSentTriggers when a data packet is sent to the news server
SocketClosedTriggers after a socket is closed
WSAErrorTriggers when the NNTP control encounters a WINSOCK error

Example


<OBJECT ID="CINEWS1" WIDTH=100 HEIGHT=50

 CLASSID="CLSID:168663E3-186D-11CF-859F-0080C7973784">

    <PARAM NAME="_Version" VALUE="65536">

    <PARAM NAME="_ExtentX" VALUE="2117">

    <PARAM NAME="_ExtentY" VALUE="1058">

    <PARAM NAME="_StockProps" VALUE="0">

    <PARAM NAME="FileClosedWAV" VALUE="">

    <PARAM NAME="NNTPServerConnectionWAV" VALUE="">

    <PARAM NAME="NNTPServerConnectionClosedWAV" VALUE="">

    <PARAM NAME="ListBoxesPopulatedWAV" VALUE="">

    <PARAM NAME="PacketReceivedWAV" VALUE="">

    <PARAM NAME="PacketSentWAV" VALUE="">

    <PARAM NAME="SocketClosedWAV" VALUE="">

    <PARAM NAME="WSAErrorWAV" VALUE="">

    <PARAM NAME="Distributions" VALUE="">

    <PARAM NAME="ArticleNumber" VALUE="">

    <PARAM NAME="MessageID" VALUE="">

    <PARAM NAME="ArticleHeader" VALUE="">

    <PARAM NAME="ArticleBody" VALUE="">

    <PARAM NAME="HostName" VALUE="">

    <PARAM NAME="HostAddress" VALUE="">

    <PARAM NAME="NewsGroup" VALUE="">

    <PARAM NAME="Date" VALUE="">

    <PARAM NAME="Time" VALUE="">

</OBJECT>

POP Control

The Crescent Internet ToolPak Post Office Protocol (CIPOP) control implements RFC 959's POP3 in an ActiveX control. With the POP control, you can build customized mail applications.

Source

Vendor: Crescent Software, a Division of Progress Software

http://crescent.progress.com

Properties

Table 21.16  Properties of the POP Control

PropertyDescription
CodebaseThe origin of the control, including the URL, file type, and version number
HostAddressThe IP address of the POP server
HostNameThe DNS name of the POP server
IDThe name of this POP control
LeftThe distance between the left edge of the control and the left edge of the HTML layout
LocalFileNameThe full path and file name for the client
MailPortThe port address for the mail service
MessageThe mail message
MessageBodyThe body part of the mail message
MessageDateThe date of the mail message
MessageHeaderThe header part of the mail message
MessageNumberThe sequence number of the mail message
MessageSubjectThe subject part of the mail message
PasswordThe mailbox password
RecvTimeoutThe time in milliseconds to wait before triggering a timeout during receive operations
SenderThe sender of the mail message
SendTimeoutThe time in milliseconds to wait before triggering a timeout during send operations
TotalMessagesThe number of messages in the connected mailbox
UserNameThe mailbox user name
TopThe distance between the top edge of the control and the top edge of the HTML layout
WidthThe width of the control, in points

Methods

Table 21.17  Methods of the POP Control

MethodDescription
CleanupConnectionCloses the socket and cleans up the WINSOCK; for normal operations, you should use the QUIT method; this is used onlyas a final resort
ConnectToPOPServerEstablishes a connection to a POP server
DELEDeletes a mail message
LISTFetches the message size
NOOPGets the connection status to a mail server
PASSSends the mail password to the mail server and verifies that it is correct
QUITEnds a POP session with a mail server
RETRFetches a mail message
RSETResets the state of the mailbox
STATFetches the TotalMessages property
USERSends the user name to the mail server
ZorderThe object is positioned in the container at the front or back

Events

Table 21.18  Events of the POP Control

EventDescription
MessageReceivedTriggers after a message is received and parsed by the control
PacketReceivedTriggers when a data packet is received from the mail server
PacketSentTriggers when a data packet is sent to the mail server
SocketClosedTriggers after a socket is closed
STATReceivedTriggers when the TotalMessages property is refreshed
WSAErrorTriggers when the POP control encounters a WINSOCK error

Example


<OBJECT ID="CIPOP1" WIDTH=100 HEIGHT=50

 CLASSID="CLSID:25f737f7-0D72-11CF-856B-0080C7973784">

    <PARAM NAME="_Version" VALUE="65536">

    <PARAM NAME="_ExtentX" VALUE="2117">

    <PARAM NAME="_ExtentY" VALUE="1058">

    <PARAM NAME="_StockProps" VALUE="0">

    <PARAM NAME="POPServerConnectionWAV" VALUE="">

    <PARAM NAME="POPServerConnectionClosedWAV" VALUE="">

    <PARAM NAME="MessageReceivedWAV" VALUE="">

    <PARAM NAME="STATReceivedWAV" VALUE="">

    <PARAM NAME="PacketReceivedWAV" VALUE="">

    <PARAM NAME="PacketSentWAV" VALUE="">

    <PARAM NAME="SocketClosedWAV" VALUE="">

    <PARAM NAME="WSAErrorWAV" VALUE="">

    <PARAM NAME="LocalFileName" VALUE="">

    <PARAM NAME="HostAddress" VALUE="">

    <PARAM NAME="HostName" VALUE="">

    <PARAM NAME="MessageNumber" VALUE="">

    <PARAM NAME="Password" VALUE="">

    <PARAM NAME="UserName" VALUE="">

</OBJECT>

SMTP Control

The Crescent Internet ToolPak Simple Mail Transfer Protocol (CISMTP) control implements RFC 821's SMTP in an ActiveX control. With the SMTP control, you can build customized mail applications.

Source

Vendor: Crescent Software, a Division of Progress Software

http://crescent.progress.com

Properties

Table 21.19  Properties of the SMTP Control

PropertyDescription
BCThe address to which a blind copy of the message will be sent
CCThe address to which a carbon copy of the message will be sent
CodebaseThe origin of the control, including the URL, file type, and version number
DomainNameThe domain name of the SMTP server
HostAddressThe IP address of the SMTP server
HostNameThe DNS name of the SMTP server
IDThe name of this SMTP control
LeftThe distance between the left edge of the control and the left edge of the HTML layout
MailListThe mail list whose members are being viewed
MailPortThe port address for the mail service
MessageBodyThe body part of the mail message
MessageSubjectThe subject part of the mail message
RecipientThe address of the mail recipient
RecvTimeoutThe time in milliseconds to wait before triggering a timeout during receive operations
SenderThe sender of the mail message
SendTimeoutThe time in milliseconds to wait before triggering a timeout during send operations
TopThe distance between the top edge of the control and the top edge of the HTML layout
WidthThe width of the control, in points

Methods

Table 21.20  Methods of the SMTP Control

MethodDescription
CleanupConnectionCloses the socket and cleans up the WINSOCK; for normal operations, you should use the QUIT method; this is used only as a final resort
ConnectToSMTPServerEstablishes a connection to an SMTP server
DATASends the message to the SMTP server
EXPNFetches the list of mail list subscribers
ExpandMailListHigh-level function (ConnectToSMTPServer, HELO, EXPN, and QUIT) to get a mail list
HELOIdentifies the sender's SMTP server to the recipient's SMTP server
MAILSends the server value to the SMTP server
NOOPGets the connection status to a mail server
QUITEnds an SMTP session with an SMTP server
RCPTSends the recipient value to the SMTP server
RETRFetches a mail message
RSETResets the state of the current mail transaction
SendMailHigh-level call (ConnectToSMTPServer, HELO, RCPT, MAIL, DATA, and QUIT) to send a mail message to the SMTP server
VRFYVerifies whether a name exists in the system
ZorderThe object is positioned in the container at the front or back

Events

Table 21.21  Events of the SMTP Control

EventDescription
PacketReceivedTriggers when a data packet is received from the mail server
PacketSentTriggers when a data packet is sent to the mail server
SocketClosedTriggers after a socket is closed
WSAErrorTriggers when the control encounters a WINSOCK error

Example


<OBJECT ID="CISMTP1" WIDTH=100 HEIGHT=50

 CLASSID="CLSID:25f737f3-0D72-11CF-856B-0080C7973784">

    <PARAM NAME="_Version" VALUE="65536">

    <PARAM NAME="_ExtentX" VALUE="2117">

    <PARAM NAME="_ExtentY" VALUE="1058">

    <PARAM NAME="_StockProps" VALUE="0">

    <PARAM NAME="SMTPServerConnectionWAV" VALUE="">

    <PARAM NAME="SMTPServerConnectionClosedWAV" VALUE="">

    <PARAM NAME="ListBoxPopulatedWAV" VALUE="">

    <PARAM NAME="PacketReceivedWAV" VALUE="">

    <PARAM NAME="PacketSentWAV" VALUE="">

    <PARAM NAME="SocketClosedWAV" VALUE="">

    <PARAM NAME="WSAErrorWAV" VALUE="">

    <PARAM NAME="HostName" VALUE="">

    <PARAM NAME="HostAddress" VALUE="">

    <PARAM NAME="DomainName" VALUE="">

    <PARAM NAME="Sender" VALUE="">

    <PARAM NAME="Recipient" VALUE="">

    <PARAM NAME="MailList" VALUE="">

    <PARAM NAME="MessageBody" VALUE="">

    <PARAM NAME="MessageSubject" VALUE="">

    <PARAM NAME="CC" VALUE="">

    <PARAM NAME="BC" VALUE="">

</OBJECT>

TCP Control

The Crescent Internet ToolPak TCP/IP Protocol (CITCP) control implements the
TCP/IP protocol in an ActiveX control. With the TCP control, you can build customized messaging and database applications on a TCP/IP backbone structure.

Source

Vendor: Crescent Software, a Division of Progress Software

http://crescent.progress.com

Properties

Table 21.22  Properties of the TCP Control

PropertyDescription
CodebaseThe origin of the control, including the URL, file type, and version number
HostAddressThe IP address of the TCP/IP host server
HostNameThe DNS name of the TCP/IP host server
IDThe name of this TCP control
LeftThe distance between the left edge of the control and the left edge of the HTML layout
PortThe port address for the TCP/IP service
ServiceNameService name provided by the port
SocketThe socket used by this control
TopThe distance between the top edge of the control and the top edge of the HTML layout
WidthThe width of the control, in points

Methods

Table 21.23  Methods of the TCP Control

MethodDescription
bGetHostByAddressFetches the host name when given a host address
bGetHostByNameFetches the host address when given a host name
bGetHostNameFetches the name of the local machine
bGetServiceByNameFetches the port number of a service
bGetServiceByPortFetches the service name associated with a port
CloseSocketCloses the current socket
ConnectToHostEstablishes a TCP/IP connection
ListenForConnectionWaits on a port for connection requests from clients
ListenForDatagramWaits on a port for a datagram TCP/IP packet
SendSends a TCP/IP packet to a host
SendDatagramSends a datagram packet to a host
ZorderThe object is positioned in the container at the front or back

Events

Table 21.24  Events of the TCP Control

EventDescription
BlockingFunctionCompletedTriggers when a blocking operation is completed
ConnectionTriggers when a TCP/IP connection is established
ConnectionClosedTriggers when a TCP/IP connection is closed
PacketReceivedTriggers when a TCP/IP packet is received
PacketSentTriggers when a TCP/IP packet is sent
PropertyChangedTriggers when a property is refreshed
WSAErrorTriggers when the TCP control encounters a WINSOCK error

Example


<OBJECT ID="CITCP1" WIDTH=100 HEIGHT=50

 CLASSID="CLSID:168663EB-186D-11CF-859F-0080C7973784">

    <PARAM NAME="_Version" VALUE="65536">

    <PARAM NAME="_ExtentX" VALUE="2117">

    <PARAM NAME="_ExtentY" VALUE="1058">

    <PARAM NAME="_StockProps" VALUE="0">

    <PARAM NAME="HostName" VALUE="">

    <PARAM NAME="HostAddress" VALUE="">

    <PARAM NAME="ServiceName" VALUE="">

</OBJECT>

UUEncode/Decode Control

The Crescent Internet ToolPak UUEncode/Decode Control (CIUU) implements the encoding and decoding capabilities as per RFCs 1521 and 1522. The control can be used to encode and decode files as per the MIME standard.

Source

Vendor: Crescent Software, a Division of Progress Software

http://crescent.progress.com

Properties

Table 21.25  Properties of the UUEncode/Decode Control

PropertyDescription
CodebaseThe origin of the control, including the URL, file type, and version number
DestinationFileNameThe full path and file name for the result file
DestinationFileSizeThe size of the result file
FireStatusThis property needs to be set to True to trigger encoded and decoded events
SourceFileNameThe source file name for an encode or decode operation
SourceFileSizeThe size of the source file

Methods

Table 21.26  Methods of the UUEncode/Decode Control

MethodDescription
UUDecodeCodes a file using the MIME standards
UUEncodeDecodes a MIME-coded file

Events

Table 21.27  Events of the UUEncode/Decode Control

EventDescription
DecodedTriggers after a MIME file is converted
DecodingFinishedTriggers at the end of the decoding process
DecodingStartedTriggers at the beginning of the decoding process
EncodedTriggers after a file is converted as per MIME standards
EncodingFinishedTriggers at the end of the encoding process
EncodingStartedTriggers at the beginning of the encoding process

Example


<OBJECT ID="CIUU1" WIDTH=100 HEIGHT=50

 CLASSID="CLSID:C27DB763-51D0-11CF-83A1-444553540000">

    <PARAM NAME="_Version" VALUE="65536">

    <PARAM NAME="_ExtentX" VALUE="2117">

    <PARAM NAME="_ExtentY" VALUE="1058">

    <PARAM NAME="_StockProps" VALUE="0">

    <PARAM NAME="SourceFilename" VALUE="">

    <PARAM NAME="DestinationFilename" VALUE="">

</OBJECT>

Certificate Enrollment Control

The Microsoft Certificate Enrollment control (Certenroll) is an ActiveX control (implemented as a DLL) that can be used to create certificate-related functions. The control has methods to generate the public/private key pair, build a certificate request in the PKCS #10 format, and accept and install certificates (of the PKCS #7 format). The control has a built-in enrollment wizard to perform all these functions.

Source

Vendor: Microsoft Corporation

http://www.microsoft.com/intdev/security/csa/enroll-f.htm

Properties

There are no properties for the Certificate Enrollment control.

Methods

Table 21.28  Methods for the Certificate Enrollment Control

MethodDescription
AcceptCredentialsAccepts the certificate and puts it in an appropriate place on the local machine for future reference
GenerateKeyPairGenerates a public/private key pair and a PKCS #10 request
GetCredentialsLocationThis is the file where the current credentials are associated
SetSessionInfoIfNeededSets the location of the PVK file

Events

There are no events for the Certificate Enrollment Control.

Example


<OBJECT

    classid="clsid:33BEC9E0-f78F-11cf-B782-00C04FD7Bf43"

    codebase=certenr3.dll

    id=certHelper>

</OBJECT>

TAPI Dial Control

The Dameware Telephony API Dial control is an ActiveX control that can be used to add telephone dialing capabilities to any Web application.

Source

Vendor: Dameware Development

http://www.mi-inc.com/~dameware  

Properties

Table 21.29  Properties of the TAPI Dial Control

PropertyDescription
CodebaseThe origin of the control, including the URL, file type, and version number
HeightThe height of this control, in points
IDThe name of this TAPI Dial control
LeftThe distance between the left edge of the control and the left edge of the HTML layout
TopThe distance between the top edge of the control and the top edge of the HTML layout
WidthThe width of the control, in points

Methods

Table 21.30  Methods of the TAPI Dial Control

MethodDescription
DialDials a number
DialUsingDisplays the Dial dialog box and dials as per the user entries
DialPropertiesDisplays the native TAPI properties dialog box
DialPropertiesNumberDisplays the TAPI properties dialog box for a specific number

Events

Table 21.31  Events of the TAPI Dial Control

EventDescription
ClickTriggers when a control is clicked with the mouse; also triggers when the user selects a value in a multi-value control such as the list box
DblClickTriggers when a control is double-clicked
KeyDownTriggers when a user presses a control, navigation, or function key
KeyUpTriggers when a user releases a control, navigation, or function key
KeyPressTriggers when a key is either pressed by the user or sent from the SendKeys function

Example


<OBJECT ID="TapiDial1" WIDTH=32 HEIGHT=32

 CLASSID="CLSID:1Cf8f5D9-Df22-11CF-B0B6-0000f63A6615">

    <PARAM NAME="_Version" VALUE="65536">

    <PARAM NAME="_ExtentX" VALUE="677">

    <PARAM NAME="_ExtentY" VALUE="677">

    <PARAM NAME="_StockProps" VALUE="0">

</OBJECT>

RAS Dial Control

The Dameware RAS Dial control is an ActiveX control that can be used to add remote network dialing and access capabilities to any Web application.

Source

Vendor: Dameware Development

http://www.mi-inc.com/~dameware

Figure 21.2 : The RAS Dial control

Properties

Table 21.32  Properties of the RAS Dial Control

PropertyDescription
CodebaseThe origin of the control, including the URL, file type, and version number
HeightThe height of this control, in points
IDThe name of this RAS Dial control
LeftThe distance between the left edge of the control and the left edge of the HTML layout
RASEntryThe name of the current RAS connection
RASUseCurrentUserLogon with the current user profile
TopThe distance between the top edge of the control and the top edge of the HTML layout
WidthThe width of the control, in points

Methods

Table 21.33  Methods of the RAS Dial Control

MethodDescription
RASConnectDials the current RASEntry
RASDiagConfigDisplays the phone book form
RASShutDownDisconnects the current RAS connection
GetIPAddressFetches the IP address of the current session

Events

Table 21.34  Events of the RAS Dial Control

EventDescription
ClickTriggers when a control is clicked with the mouse; also triggers when the user selects a value in a multi-value control such as the list box
DblClickTriggers when a control is double-clicked
KeyDownTriggers when a user presses a control, navigation, or function key
KeyUpTriggers when a user releases a control, navigation, or function key
KeyPressTriggers when a key is either pressed by the user or sent from the SendKeys function

Example


<OBJECT ID="RasDial1" WIDTH=32 HEIGHT=32

 CLASSID="CLSID:ED29373B-Df14-11CF-B0B6-0000f63A6615">

    <PARAM NAME="_Version" VALUE="65536">

    <PARAM NAME="_ExtentX" VALUE="677">

    <PARAM NAME="_ExtentY" VALUE="677">

    <PARAM NAME="_StockProps" VALUE="0">

</OBJECT>