CCVBX Custom Control for Visual Basic
CCVBX Visual Basic Custom Control

Description

CCVBX is a Visual Basic eXtension of VIM  (Vendor-Independent Messaging Interface). You can add e-mail capabilities to your Visual Basic application with virtually no code.

This Module constitute the 2.30 release of CCVBX (cc:MAIL / VIM VBX implementation). CCVBX  v2.30 implements all VIM functions that LOTUS distribute with their products. With CCVBX you will be able to design programs that work along with cc:Mail, cc:Fax, etc.

This Evaluation Version Will NOT RUN in EXEC files. If you want to order the RUNTIME Version e-mail your registration form to:

        COMPUSERVE:73000,1661 or

        INTERNET: 91-22701@usb.ve

We are NOT responsible for the problems you can have for using this EVALUATION VBX VERSION but we will help you at any time. Feel FREE to ask any question about using this Evaluation Version without any compromise.

The CCVBX you get from COMPUSERVE is a EVALUATION version that you can use with your DEMO programs. You will have to pay the LOTUS royalties for using the VIM message system they implements with their products.

CCVBX v2.30 registration form

What is New is This Version?

What you need to use CCVBX?

How CCVBX works?

CCVBX Errors

About CCVBX

File Name

CCVBX.VBX

CCVBX Custom Controls:

CCvbx consist of two (2) custom Controls:

CCMail	Custom Control

CCMsg	Custom Control

Remarks

This custom control is distributed as a sample for Visual Basic Application that need to implement e-mail capabilities.

Distribution Note  When you create and distribute applications that use the CCVBX control you should install the file CCVBX.VBX in the customer's Microsoft Windows \SYSTEM sub directory. The Visual Basic Setup Kit included with the Professional VB product provides tools to help you write setup programs that install you applications correctly.

All of the properties, events, and methods for this control are listed below.  Properties and events that apply only to this control, or require special consideration when used with it, are underlined.  They are documented in this help file.  See the Visual Basic Language Reference or on-line Help for documentation of the remaining properties, events, and methods.


OrderForm
Registration Form

Please e-Mail your registration form to:

COMPUSERVE: 73000,1661.

Full Prices:

        CCVBX  2.30 (Runtime)     	$37

        CCVBX  2.30 & Source Code 	$98

Upgrade Prices: (CCVBX 2.XX owners)

        CCVBX  2.30 (Runtime)     	$19

        CCVBX  2.30 & Source Code 	$72

Please send your Check or Money Order payable to:

Gregory Barnes

8493 Boca Rio Drive

Boca Raton FL 33433

USA

World Wide REGISTRATION FORM:

Date:______________

Name:___________________________________

E-mail Address:_________________________

Company Name:_______________________________________________________

Address:____________________________________________________________

____________________________________________________________________

City: _________________________________, Country: __________________

Phone: (_____) ______________

FAX:   (_____) ______________


NewVersion 2.30
What is New in this Version?

This is the most powerful version of CCVBX. This version implement ALL VIM functions.

With CCVBX v2.30 you can add the most powerful e-mail capabilities to your Visual Basic applications:

- Full Support for Gateway Session

- Administrative Session supported

- MDI support

- Automatic Binding

- Errors handling

- Extended address support

- full recipient control

- Complete address book handling (Add, remove a new user or mail list, etc.)

- 3D dialog box

- New Folder or Category handling

- Multi-Session capability

- Rebind action

- Clone opened CCmail Custom Object

CCVBX version 2.30 is all you need to implement E-MAIL capabilities to your VB app.'s


WhatNeed to use CCVBX
What you need to use CCVBX?

You will need cc:MAIL installed in your LAN in order to use CCVBX.

You will also need to install the "Client Workstations" in all

workstations that will use CCVBX version 2.30 and the cc:Mail

VIM.DLL routines.

Contact LOTUS representants for more information.

If you have missed any DLL, it will e-mailed as soon as possible.


How CCVBX Works?

CCVBX IMPLEMENTATION

CCVBX consist in two custom controls:

- The CCMAIL Control Class

- The CCMSG Control Class

These controls are all you need to control an Address in CCMAIL. With CCVBX controls you will be able to:

-    Receive Message that are in your INBOX

-    Move a Message to any Folder or Category in cc:Mail implementation

-    Automatic or Manual LOGIN

-    Change the user at any moment

-    Get the number of messages waiting in your Inbox

-    Get Information about the users in your Post Office

-    Get Information about your Post Office

-    Look for an Address in the Post Office

-    Get Global Information about a message (Subject, From, Number of Attachments, etc )

-    Get information about any attachment (Type, size, path, name, class,etc.)

-    Save an Attachment or The Complete message (Extracted messages) in a Disk File

-    Get an Attachment in a Memory location

-    Delete, Create, Send, reply or forward any message in any folder


CCMAIL Custom Control Class
 The CCMail Custom Control Class

The CCmail custom object controls all the global information about cc-mail. You will use it to login in CCMAIL and get general information about the messages in your inbox or any other folder; you will also use these control to get information about any other user in you post office.

The CCMAIL Class will help you to open one or more sessions in any post office available in your network, so you will transfer message or information between them.

By the other hand, the CCmsg class is intended to get information about a message in any CCMAIL folder.

Properties

About	FetchMsgNum	NewMessage

Action	Find	NumAddress

AddressComments	Folder	NumBooks

AddressLocation	From	NumGroupMembers

AddressName	GroupMemberName	NumMsg

AddressType	Height	Parent

Administrator	Hwnd	Password

Align	Index	QueryCapability

AutomaticBinding	LastError	Result

BookName	LastErrorNum	Session

ChangePassword	Left	SessionMode

Container	LoginMode	SetMsgType

CtlName	LoginTitle	Subject

DisplayErrors	MailBox	Tag

ExtAddress	MsgID	Timer

ExtAddressName	MsgDate	Top

FetchAddress	MsgRef	UnreadMsgRef

FetchBook	MsgStatus	User

FetchGroupMember	MsgTime	Width

Events

UnreadMessage

Errors

CCVBX Errors


CCMSG Custom Control Class

The CCmsg Control class is used to obtain information about:

- Message in the INBOX or any other Folder

- Message that has been extracted (Save in DISK)

- New Message that are composed

You can also handle the attachments that are included with your message.

With CCMSG you will be able to:

- Obtain Information about a e-mail message

- Reply or forward a message that are in your inbox

- Extract a message

- Create and Send a New Message

- Obtain All the attachment information (Size, Class, Type, etc.)

- Save any attachment on disk or retrieve it on memory

- Delete a Message

- Move or Remove the message to any Folder

CCMSG Concepts:

With CCMSG you will be able to open two messages simultaneously. One message could be opened from the inbox,  folder, or from an extracted message (message saved on disk).By the other hand, you can open a second message as New, Forward or Reply Message.

The Message that are opened from a folder or from extracted message are in the LAYER_FOLDER, and the NEW,FORWARD or REPLY message are in the LAYER_CREATE. You will be able to obtain information about messages in the any LAYER. These layers are created to distinguish each kind of message and to avoid potential problems that can occur if the VIM functions are not handle carefully.

Properties

AutomaticBinding	hItemMem	MsgType

About	Height	nItems

Action	hMsg	nRecipients

AddRecipient	Hwnd	OpenExtractedMsg

Align	Index	OriginalItemName

bDeliveryReport	ItemClass	Parent

bRetReceipt	ItemType	Priority

Bound_To	ItemPath	RecipientName

Container	ItemSize	RecipientType

Create_NewReplyForward_Msg	LastError	ReplyForwardFlags

CtlName	LastErrorNum	RemoveFromCategory

DisplayErrors	Left	SessionMode

ExtAddress	MarkAsRead	SaveMsgToSend

ExtractMsg	MoveToCategory	Session

FetchItemNum	MsgDate	SetAttach

FetchMsg	MsgID	SetItemName

FetchRecipientNum	MsgRef	Subject

From	MsgTime	Tag

Top	Width

Events

FetchMessage	NewMessageClosed

SetFromGatewaySession	OpenMessage

NewMessage	FolderMsgNotAvailable

NewMessageSent


Property Session

This Property can be Set in order to CLONE a CCmail Control and Returns the VIM Session handle

Usage

[form.]CCMail.Session[ = SessionHandleToClone&)

VIM_SessionHandle&=[form.]CCMail.Session

Remarks

If this property return zero (0) NO session has been opened, any other number returned is the VIM session handle.

When you clone a CCmail Control object, you must set the Container property BEFORE you clone the session handle.

Data Type

Long


UnreadMessage Event, CCMAIL Control

Description

Occurs whenever is an unread message in the INBOX container. This event occurs continuesly till all message in the inbox get read. The polling frecuency is determined by the Timer Property

Syntax

Sub CCMail1_UnreadMessage (NumUnreadMsg As Long)

Remarks

The NumUnreadMsg value indicate the number of unread messages that reside in the INBOX.


Property LoginMode

This Property Sets and returns the login mode for CCVBX.

Usage

[form.]CCMail.LoginMode[ = LoginMode &)

LoginMode&=[form.]CCMail.LoginMode

Settings

The LoginMode property settings are:

Setting	Decription

0	Automatic Login when application starts. CCVBX will try to log the user in cc:Mail post office and will show a Dialog Box if the User or Password are not correct

1	Manual Login. When application starts, you will need to set the session property to start the VIM cc:Mail session

Remarks

if this property is set to zero (0), CCVBX will handle the Login Dialog Box  if it is necessary.

Data Type

Long


Property Container

This Property returns the container handle assigned by VIM functions

Usage

[form.]CCMail.Container[ = SessionContainer &)

VIM_Container&=[form.]CCMail.Container

Returns

If this property return zero (0), the Session Container Could no be opened. If you use an Administrative Session the container property will be zero (0) and an error will be generated.

Any other number indicate the VIM container handle

Data Type

Long


Property SessionMode

This Property sets and returns the current session mode

Usage

[form.]CCMail.SessionMode[ = SessionMode &)

VIM_SessionMode&=[form.]CCMail.SessionMode

Settings

The SessionMode property settings are:

Setting	Decription

0	Normal Session.

1	Gateway Session

Remarks

The Gateway session are full supported in CCVBX v2.30. You will be able to use a Gateway session with any post office available in cc:Mail

Data Type

Long


Property About

This Property will Inform you about the original programmer of CCVBX

The Original Programmer of CCVBX con be reached at:

Jower G. Toppin

Compuserve: 73000,1661

INTERNET: 91-22701@usb.ve

Data Type

Long


Property User

This Property sets and returns the current User Name of cc:Mail

Usage

[form.]CCMail.User[ = User $)

VIM_User$=[form.]CCMail.User

Remarks

The User Name must be a valid name available in the cc:Mail Post Office Directory.

If you need to establish an administrative session, use the Office Name as User Name.

Data Type

String


Property Password

This Property sets and returns the current Password.

Usage

[form.]CCMail.Password[ = Password $)

VIM_Password$=[form.]CCMail.Password

Remarks

This password is used to access the cc:Mail address indicated by the user name

Data Type

String


Property Administrator

This Property returns the current Administrator Name of the cc:Mail Post Office

Usage

VIM_Administrator$=[form.]CCMail.Administrator

Data Type

String


Property ChangePassword

This Property sets the new Password. for the current user

Usage

[form.]CCMail.ChangePassword[ = NewPassword $)

Remarks

This password is used to access the cc:Mail address indicated by the user name

Data Type

String


Property NumMsg

This Property return the number of messages available at the inbox or current folder

Usage

VIM_NumMsg&=[form.]CCMail.NumMsg

Remarks

This Property only return the amount of messages of the specified type in the SetMsgType Property

Data Type

Long


Property SetMsgType

This Property sets and returns the type of message currently used

Usage

[form.]CCMail.SetMsgType[ = NewMsgType &)

VIM_MsgType&=[form.]CCMail.SetMsgType

Settings

The SetMsgType property settings are:

Setting	Decription

0	ALL messages

1	Read Messages

2	Unread Messages

Remarks

When you set a specific message type, the NumMsg Property will only return the amount of message of that type.

Data Type

Long


Property QueryCapability

This Property sets and returns the current Query Capability

Usage

[form.]CCMail.QueryCapablity[ = QueryCapability &)

VIM_result&=[form.]CCMail.QueryCapability

Settings

The QueryCapability property settings are:

Setting	Decription

106	VIMSEL_VERSION

46	VIMSEL_MAX_SUBJECT_LEN

48	VIMSEL_MAX_TYPE_LEN

47	VIMSEL_MAX_TEXT_LEN

80	VIMSEL_RTF

31	VIMSEL_FAX

90	VIMSEL_STYLED

70	VIMSEL_PICT

51	VIMSEL_MOVIE

39	VIMSEL_IMAG

105	VIMSEL_UNWRAPPED_TEXT

3	VIMSEL_ALL_NOTE_PART_SUPP

8	VIMSEL_ATTACH_TYPE_SUPP

7	VIMSEL_ATTACH_DIRS

24	VIMSEL_ENCRYPT

25	VIMSEL_ENCRYPT_WITH_KEY

84	VIMSEL_SIGN

65	VIMSEL_NSTD_DERIVED_REPLIES

64	VIMSEL_NSTD_DERIVED_FORWARD

18	VIMSEL_CP850

16	VIMSEL_CP1252

17	VIMSEL_CP437

44	VIMSEL_LMBCS

41	VIMSEL_ISTRING

99	VIMSEL_UNICODE

5	VIMSEL_APPLESINGLE

69	VIMSEL_PATH_REQUIERED

54	VIMSEL_NAME_REQUIERED

68	VIMSEL_PASS_REQUIERED

Remarks

You must set this property to the capability you need to query and this property will return the result of the query process..

Data Type

Long


Property Folder

This Property sets and returns the current working Folder or Category.

Usage

[form.]CCMail.Folder[ = NewFolder $)

VIM_Folder$=[form.]CCMail.Folder

Remarks

The CCmail Custom control will only use the specified Folder if the MailBox Property is set to FOLDER

Data Type

String


Property MailBox

This Property sets and returns the current working Area (Inbox or Folder).

Usage

[form.]CCMail.MailBox[ = NewMailBox &)

VIM_MailBox&=[form.]CCMail.MailBox

Settings

The MailBox property settings are:

Setting	Decription

0	Set the working Area to INBOX

1	Set thw working Area to FOLDER

Remarks

If you need to work with message in a cc:Mail Folder, you need to set the working Area to FOLDER and set the Folder Property with the correct Folder Name.

Data Type

Long


Property NewMessage

This Property indicate if a new message has arrived to the current address since the last call to this property or the last UnreadMessage Event

Usage

VIM_NewMessage&=[form.]CCMail.NewMessage

Returns

This Property return:

0	if no new message has arrived

1	if a new message has arrived

Data Type

Long


Property FetchMsgNum

This Property sets and returns the current message pointer in the ccmail control.

Usage

[form.]CCMail.FetchMsgNum[ = NewMsgPos &)

VIM_CurMsg&=[form.]CCMail.FetchMsgNum

Remarks

This property will return current message pointer in the ccmail control.

This property will return zero (0) if NO message is being pointed.

Data Type

Long


Property MsgRef

This Property returns the reference of the current message in the CCmail control

Usage

VIM_MsgRef$=[form.]CCMail.MsgRef

Data Type

String


Property UnreadMsgRef

This Property returns the reference of the next available unread message

Usage

VIM_UnreadMsgRef$=[form.]CCMail.UnreadMsgRef

Data Type

String


Property MsgStatus

This Property returns the status of the current message

Usage

VIM_MessageStatus&=[form.]CCMail.MsgStatus

Returns

This Property return:

1	if the current message has been read

2	if the current message has not been read

Data Type

Long


Property Timer

This Property sets and returns the current message polling interval.

Usage

[form.]CCMail.Timer[ = NewMsgPollingInterval &)

VIM_CurMsgPollingInterval&=[form.]CCMail.Timer

Remarks

This property specified the timing polling interval (5 sec steps) to generate the UnreadMessage Event

Data Type

Long


Property Subject

This Property returns the subject of the current message

Usage

VIM_MsgSubject$=[form.]CCMail.Subject

Data Type

String


Property From

This Property returns the From of the current message

Usage

VIM_MsgFrom$=[form.]CCMail.From

Remarks

The format used for the From property is specified in the ExtAddress Property

Data Type

String


Property MsgID

This Property returns the ID of the current message

Usage

VIM_MsgID$=[form.]CCMail.MsgID

Data Type

String


Property MsgDate

This Property returns the Date of the current message

Usage

VIM_MsgDate$=[form.]CCMail.MsgDate

Data Type

String


Property MsgTime

This Property returns the Time of the current message

Usage

VIM_MsgTime$=[form.]CCMail.MsgTime

Data Type

String


Property Action

This Property sets a new Action

Usage

[form.]CCMail.Action[ = NewAction &)

Settings

The Action property settings are:

Setting	Decription

ACTION_BIND	0. Rebind the CCMAIL control Object.

ACTION_CREATE_ADDRESS	10. Create a New address in the current Book directory

ACTION_DELETE_ADDRESS	11. Delete sn entry in the current Book directory

ACTION_CHANGE_PASSWORD	12. Change the password of the current entry

ACTION_ADD_GROUPMEMBER	13. Add a Member to a mailing List

ACTION_DELETE_GROUPMEMBER	14. Delete a member from a mailing list

ACTION_LOGIN	15. Login cc:Mail with a CCmail Custom Control

ACTION_LOGOUT	16. Logout cc:Mail with a CCmail Custom Control

Data Type

Long


Property NumBooks

This Property returns the number of available books in the cc:Mail Post Office

Usage

VIM_NumBooks&=[form.]CCMail.NumBooks

Data Type

Long


Property BookName

This Property set and returns the Name of the current Address Book

Usage

VIM_BookName$=[form.]CCMail.BookName

Data Type

String


Property FetchBook

This Property sets and returns the current Address Book.

Usage

[form.]CCMail.FetchBook[ = BookNum &)

VIM_CurBookNum&=[form.]CCMail.FetchBook

Data Type

Long


Property NumAddress

This Property returns the number of available entries in the current book

Usage

VIM_NumAddress&=[form.]CCMail.NumAddress

Data Type

Long


Property AddressName

This Property returns the Name of the current entry in the address Book

Usage

VIM_AddressName$=[form.]CCMail.AddressName

Data Type

String


Property FetchAddress

This Property sets and returns the current entry in the Address Book.

Usage

[form.]CCMail.FetchAddress[ = AddressNum &)

VIM_CurAddressNum&=[form.]CCMail.FetchAddress

Data Type

Long


Property Find

This Property Look for a entry in the current Address Book

Usage

[form.]CCMail.Find[ = AddressNameToFind $)

Remarks

The result of this action is returned in the RESULT property

Data Type

String


Property Result

This Property returns the result of the FIND process.

Usage

VIM_Result&=[form.]CCMail.Result

Returns:

0	if the Entry has not been found

1	If the Entry has been found

Data Type

Long


CCVBX Errors:

Errors

The errors are:

Setting	Decription

NO_ERROR	0

ERROR_OPEN_MESSAGE	1

ERROR_NO_MSG_CREATED	2

ERROR_UNABLE_TO_MOVE	3

ERROR_UNABLE_TO_REMOVE	4

ERROR_UNABLE_TO_DELETE	5

ERROR_UNABLE_TO_GET_HEADER	6

ERROR_UNABLE_TO_CLOSE	7

ERROR_ALLOC_MEMORY	8

ERROR_ALLOC_SIZE	9

ERROR_UNABLE_REPLY_FORWARD	10

ERROR_CONTAINER_CLOSED	11

ERROR_LAYER_CREATE_CLOSED	12


CCVBX About:

About

CCVBX has been developed in Caracas Venezuela by:

Jower G. Toppin

Electronic Engineer

Compuserve Address: 73000,1661

Phone: 58-(2)-961.12.82

The original concept of CCVBX was elaborated by Jower G. Toppin in Caracas Venezuela.

History:

The first version of CCVBX (v1.00) was designed as a FAX gateway for cc:Mail v2.01, We used CCVBX to obtain messages coming from cc:Fax and to re-route the message to the final user.We use the CALERA libraries to apply OCR to the cover sheet of the FAX. message

Because of the first approach of CCVBX, we have been working hard to implement ALL vim functions supported by cc:Mail. The result is the New Version 2.30 that resume ALL the VIM functions in 2 custom controls, CCVBX is just the best choice to implement e-mail capabilities to your Visual Basic Applications.

The Version 2.30 will be soon available for BORLAND C++ & Visual C++. (CALL FOR MORE INFORMATION)

Future Versions:

The future version of CCVBX will support MAPI, MHS and other e-mail plataforms.

We hope you enjoy this evaluation version of CCVBX v2.30

Thanks...

Jower G. Toppin

73000,1661

INTERNET: 91-22701@usb.ve


Property AddressType

This Property returns the address type of the current entry.

Usage

VIM_AddressType&=[form.]CCMail.AddressType

Returns

The AddressType returns are:

Setting	Decription

26	VIMSEL_ENTITY

38	VIMSEL_GROUP

Data Type

Long


Property ExtAddress

This Property set the address format of the current session.

Usage

[form.]CCMail.ExtAddress[ = ExtAddressFormat &)

VIM_ExtAddress&=[form.]CCMail.ExtAddress

Settings

The ExtAddress settings are:

Setting	Decription

0	Normal Address Format

1	Extended Address Format

Data Type

Long


Property ExtAddressName

This Property returns the Name of the current entry in the address Book in the Extended address Format

Usage

VIM_ExtAddressName$=[form.]CCMail.ExtAddressName

Data Type

String


Property AddressComments

This Property returns the Comments of the current entry in the address Book directory

Usage

VIM_AddressComments$=[form.]CCMail.AddressComments

Data Type

String


Property AddressLocation

This Property returns the address locations of the current session.

Usage

[form.]CCMail.AddressLocation[ = AddressLocation &)

VIM_AddressLocation&=[form.]CCMail.AddressLocation

Settings

The AddressLocation settings are:

Setting	Decription

45	VIMSEL_LOCAL

259	VIMSEL_DIALIN

260	VIMSEL_REMOTE

258	VIMSEL_ALIAS

273	VIMSEL_DIRECT_POSTOFFICE

274	VIMSEL_INDIRECT_POSTOFFICE

Data Type

Long


Property LastError

This Property returns the string of the last error

Usage

VIM_LastError$=[form.]CCMail.LastError

Data Type

String


Property LastErrorNum

This Property returns the number of the last error

Usage

VIM_LastErrorNum&=[form.]CCMail.LastErrorNum

Remarks

This property returns zero (0) if there is no errors

Data Type

Long


Property DisplayErrors

This Property sets and returns the error handling state

Usage

VIM_DisplayErrors&=[form.]CCMail.DisplayErrors

[form.]CCMail.DisplayErrors[ = DisplayErrorForm &)

Settings

The DisplayErrors settings are:

Setting	Decription

0	Display Errors. CCVBX handle the errors.

1	NO Display Errors. CCVBX will not display the error Message Box

Data Type

Long


Property NumGroupMembers

This Property returns the number of members of the current mailing list

Usage

VIM_NumMembers&=[form.]CCMail.NumGroupMembers

Data Type

Long


Property FetchGroupMember

This Property sets and returns the current Group member entry in the mailing list.

Usage

[form.]CCMail.FetchGroupMember[ = GroupMemberNum &)

VIM_CurGroupMemberNum&=[form.]CCMail.FetchGroupMember

Data Type

Long


Property GroupMemberName

This Property returns the Name of the current group member entry in the mailing list

Usage

VIM_GroupMemberName$=[form.]CCMail.GroupMemberName

Data Type

String


Property AutomaticBinding

This Property sets and returns the state of the initial control binding

Usage

VIM_AutomaticBinding&=[form.]CCMail.AutomaticBinding

[form.]CCMail.AutomaticBinding[ = AutomaticBindingState&)

Settings

The AutomaticBinding settings are:

Setting	Decription

0	Manual Binding. You need to set the Session, container and the session mode properties in the associated CCMsg control objects.

1	Automatic Binding. CCmail control will perform an automatic binding with all CCmsg controls availables

Data Type

Long


Property LoginTile

This Property sets and returns the Title of the login dialog box.

Usage

VIM_LoginTitle$=[form.]CCMail.LoginTitle

[form.]CCMail.LoginTitle[ = NewLoginTitle $)

Data Type

String


Property Session

This Property sets and returns the VIM Session handle

Usage

[form.]CCMsg.Session[ = SessionHandle &)

VIM_SessionHandle&=[form.]CCMsg.Session

Remarks

You need to set the Session and the Container property with the values returned by the associated CCMail control object. CCVBX will automatically assing the Session and the Container property if you set the Automatic Bind mode.

Data Type

Long


Property Container

This Property sets and returns the container handle assigned by VIM functions

Usage

[form.]CCMsg.Container[ = SessionContainer &)

VIM_Container&=[form.]CCMsg.Container

Remarks

You need to set the Session and the Container property with the values returned by the associated CCMail control object. CCVBX will automatically assing the Session and the Container property if you set the Automatic Bind mode.

Data Type

Long


Property SessionMode

This Property sets and returns the current session mode

Usage

[form.]CCMsg.SessionMode[ = SessionMode &)

VIM_SessionMode&=[form.]CCMsg.SessionMode

Settings

The SessionMode property settings are:

Setting	Decription

0	Normal Session.

1	Gateway Session

Remarks

You have to assing the same Value that you assing to the associated CCMail control object.

CCVBX will automatically assing the SessionMode property if you set the Automatic Bind mode

Data Type

Long


Property MsgRef

This Property sets and returns the reference of the current message in the CCmsg control

Usage

VIM_MsgRef$=[form.]CCMsg.MsgRef

Remarks

To open a e-mail message you must read the message reference from the associated CCMail control object and assing it to the CCMsg control object throught  this property.

Data Type

String


Property Subject

This Property returns the subject of the current LAYER_FOLDER message

Usage

VIM_MsgSubject$=[form.]CCMsg.Subject

Data Type

String


Property From

This Property returns the From of the current LAYER_FOLDER message

Usage

VIM_MsgFrom$=[form.]CCMsg.From

Data Type

String


Property MsgID

This Property returns the ID of the current message

Usage

VIM_MsgID$=[form.]CCMsg.MsgID

Data Type

String


Property MsgDate

This Property returns the Date of the current message

Usage

VIM_MsgDate$=[form.]CCMsg.MsgDate

Data Type

String


Property MsgTime

This Property returns the Time of the current message

Usage

VIM_MsgTime$=[form.]CCMsg.MsgTime

Data Type

String


Property Action

This Property sets a new Action

Usage

[form.]CCMsg.Action[ = NewAction &)

Settings

The Action property settings are:

Setting	Decription

ACTION_BIND	0. Rebind the CCMAIL control Object.

ACTION_DELETE	1. Delete the current LAYER_FOLDER message

ACTION_SENDMSG	2. Send The current LAYER_CREATE message

ACTION_GETITEMDISK	3. Save the current Attachment on Disk

ACTION_GETITEMMEM	4. Save the current Attachment on Memory

ACTION_CLOSEMSG	5. Close the message at the current LAYER

Data Type

Long


Property LastError

This Property returns the string of the last error

Usage

VIM_LastError$=[form.]CCMsg.LastError

Data Type

String


Property LastErrorNum

This Property returns the number of the last error

Usage

VIM_LastErrorNum&=[form.]CCMsg.LastErrorNum

Remarks

This property returns zero (0) if there is no errors

Data Type

Long


Property DisplayErrors

This Property sets and returns the error handling state

Usage

VIM_DisplayErrors&=[form.]CCMsgl.DisplayErrors

[form.]CCMsg.DisplayErrors[ = DisplayErrorForm &)

Settings

The DisplayErrors settings are:

Setting	Decription

0	Display Errors. CCVBX handle the errors.

1	NO Display Errors. CCVBX will not display the error Message Box

Data Type

Long


Property AutomaticBinding

This Property sets and returns the state of the initial control binding

Usage

VIM_AutomaticBinding&=[form.]CCMsg.AutomaticBinding

[form.]CCMsg.AutomaticBinding[ = AutomaticBindingState&)

Settings

The AutomaticBinding settings are:

Setting	Decription

0	Manual Binding. You need to set the Session, container and the session mode properties in the associated CCMsg control objects.

1	Automatic Binding. CCmsg control will perform an automatic binding with all CCmail controls associated

Data Type

Long


Property hItemMem

This Property returns the memory handle where the last attachment has been saved

Usage

VIM_MemoryHandle&=[form.]CCMsg.hItemMem

Remarks

This property returns zero (0) if there is no MemoryAllocated. The Application Must FREE the memory that CCVBX allocate to save the attachment. If your application does not free the memory, CCVBX will free it when you save another attachment on memory

Data Type

Long


Property hMsg

This Property returns the Message handle of the current message in the LAYER_FOLDER

Usage

VIM_MsgHandle&=[form.]CCMsg.hMsg

Remarks

This Message Handle is valid ONLY when the LAYER_FOLDER message is opened. Because the LAYER_FOLDER message is opened while performing some actions, this property should never be used.

Data Type

Long


Property nItems

This Property returns the number of items available in the current Message

Usage

VIM_NumItems&=[form.]CCMsg.nItems

Data Type

Long


Property SetItemName

This Property sets and returns the FileName that will be used to save the attachment on disk

Usage

[form.]CCMsg.SetItemName[ = NewItemName$)

Data Type

String


Property bRetReceipt

This Property indicate if .a Return receipt is requested when a LAYER_CREATE message is sent

Usage

VIM_bRetReceipt&=[form.]CCMsgl.bRetReceipt

[form.]CCMsg.bRetReceipt[ = RetReceipt &)

Settings

The bRetReceipt settings are:

Setting	Decription

0	no Return Receipt

1	Return Receipt

Data Type

Long


Property bDeliveryReport

This Property indicate if .a Delivery report is requested when a LAYER_CREATE message is sent

Usage

VIM_bDelReport&=[form.]CCMsgl.bDeliveryReport

[form.]CCMsg.bDeliveryReport[ = DelReport &)

Settings

The bDeliveryReport settings are:

Setting	Decription

0	no Delivery Report

1	Delivery Report requested

Data Type

Long


Property SaveMsgToSend

This Property indicate if you need to save the message that is going to be send

Usage

VIM_bSaveMsg&=[form.]CCMsgl.SaveMsgToSend

[form.]CCMsg.SaveMsgToSend[ = bSaveMsg &)

Settings

The bSaveMsgToSend settings are:

Setting	Decription

0	DONT Save Message

1	Save Message

Data Type

Long


Property Priority

This Property sets and returns the priority of the current message

Usage

VIM_CurPriority&=[form.]CCMsg.Priority

[form.]CCMsg.Priority[ = NewPriority&)

Settings

The Priority settings are:

Setting	Decription

VIM_LOW_PRIORITY	0. Low Priority

VIM_NORMAL_PRIORITY	1. Normal Priorty

VIM_HIGH_PRIORITY	2. High Priority

Data Type

Long


Property ExtAddress

This Property set the address format of the current session.

Usage

[form.]CCMsg.ExtAddress[ = ExtAddressFormat &)

VIM_ExtAddress&=[form.]CCMsg.ExtAddress

Settings

The ExtAddress settings are:

Setting	Decription

0	Normal Address Format

1	Extended Address Format

Data Type

Long


Property RecipientName

This Property sets and returns the Name of the current recipient of the current message

Usage

[form.]CCMsg.RecipientName[ = RecipientName $)

VIM_RecipientName$=[form.]CCMsg.RecipientName

Remarks

You need to set a recipient Name when you need to ADD a recipient to a LAYER_CREATE message.

Data Type

String


Property SetAttach

This Property sets the File name of the attachment that need to be added to the LAYER_CREATE message

Usage

[form.]CCMsg.SetAttach[ = AttachName $)

VIM_AttachName$=[form.]CCMsg.SetAttach

Remarks

You need to set a recipient Name when you need to ADD a recipient to a LAYER_CREATE message.

Data Type

String


Property MoveToCategory

This Property sets the Folder Name where the current message will be moved to

Usage

[form.]CCMsg.MoveToCategory[ = FolderName $)

VIM_FolderName$=[form.]CCMsg.MoveToCategory

Remarks

If the Folder you specified doesn't exist, VIM will create it as a new one.

Data Type

String


Property RemoveFromCategory

This Property sets the Folder Name where the current message will be removed from

Usage

[form.]CCMsg.RemoveFromCategory[ = FolderName $)

VIM_FolderName$=[form.]CCMsg.RemoveFromCategory

Data Type

String


Property FetchMsg

This Property sets and returns the current message you are working with

Usage

[form.]CCMsg.FetchMsg[ = LayerHandle &)

VIM_Layerhandle&=[form.]CCMsg.FetchMsg

Settings

The FetchMsg settings are:

Setting	Decription

0	LAYER_FOLDER message

1	LAYER_CREATE message

Remarks

You NEED to fetch a message from the LAYER_FOLDER or the LAYER_CREATE to :

1.- Close the message

2.- Get MsgType Information

Data Type

Long


Property ExtractMsg

This Property sets the File Name where the current message will be saved

Usage

[form.]CCMsg.ExtractMsg[ = FileName $)

VIM_FileName$=[form.]CCMsg.ExtractMsg

Data Type

String


Property FetchRecipientNum

This Property sets and returns the current Recipient number

Usage

[form.]CCMsg.FetchRecipientNum[ = RecipientNum &)

VIM_RecipientNum&=[form.]CCMsg.FetchRecipientNum

Remarks

You NEED to fetch a recipient to obtain its Name and Type

Data Type

Long


Property RecipientType

This Property sets and returns the current Recipient Type

Usage

[form.]CCMsg.RecipientType[ = RecipientType &)

VIM_RecipientType&=[form.]CCMsg.RecipientType

Settings

The RecipientType settings are:

Setting	Decription

0	TO:

1	CC:

2	BCC:

Data Type

Long


Property MarkAsRead

This Property indicate if CCVBX will mark any opened message as read

Usage

VIM_bMarkMsg&=[form.]CCMsgl.MarkAsRead

[form.]CCMsg.MarkAsRead[ = bMarkMsg &)

Settings

The bSaveMsgToSend settings are:

Setting	Decription

0	Mark Messages as Read

1	DON'T Mark message as read

Data Type

Long


Property nRecipients

This Property returns the number of recipient of the current Message

Usage

VIM_NumRecipients&=[form.]CCMsg.nRecipients

Data Type

Long


Property MsgType

This Property returns the current message type

Usage

VIM_bMsgType&=[form.]CCMsg.MsgType

Returns

The MsgType are:

Setting	Decription

0	ST_INBOX. Message opened from the INBOX or Folder

2	ST_NEW. Message in the LAYER_CREATE is a NEW message

3	ST_EXTRACTED. Message in the LAYER_FOLDER is an extracted message.

4	ST_FORWARD. Message in the LAYER_CREATE is a FORWARD message.

5	ST_REPLY. Message int he LAYER_CREATE is a REPLY Message.

Data Type

Long


Property Bound_To

This Property sets and return the NAME of the CCMAIL control object associated with the CCmsg control object

Usage

[form.]CCMsg.Bound_To[ = CCmail_ObjectName $)

VIM_ObjectrName$=[form.]CCMsg.Bound_To

Remarks

You HAVE TO indicate the NAME of the FORM where the CCMAIL control resides:

i.e:	ParentForm.ChildForm.CCmail1

Data Type

String


Property AddRecipient

This Property sets the Type of the recipient that will be added to the current LAYER_CREATE message.

Usage

[form.]CCMsg.AddRecipient[ = RecipientType &)

VIM_RecipientType&=[form.]CCMsg.AddRecipient

Settings

The AddRecipient settings are:

Setting	Decription

0	TO:

1	CC:

2	BCC:

Remarks

When You SET this property, a new recipient will be added to the current message with the name specified in the RecipientName Property

Data Type

Long


Property ReplyForwardFlags

This Property sets the flags of the LAYER_CREATE message that will be created

Usage

[form.]CCMsg.ReplyForwardFlags[ = MsgFlags &)

VIM_MsgFlags&=[form.]CCMsg.ReplyForwardFlags

Settings

The ReplyForwardFlags settings are:

Setting	Decription

FORWARD MESSAGES

1	VIM_HISTORY

0	VIM_NO_FLAGS

REPLY MESSAGES

2	VIM_INHERIT_CONTENTS

4	VIM_ALL_RECIPIENTS

Remarks

You need to SET the flags before you create the REPLY/FORWARD message

Data Type

Long


Property Create_NewReplyForward_Msg

This Property creates a new message in the LAYER_CREATE

Usage

[form.]CCMsg.Create_NewReplyForward_Msg[ = MsgType &)

Settings

The Create_NewReplyForward_Msg settings are:

Setting	Decription

ST_NEW	2.Creates a NEW message

ST_REPLY	5.Creates a Reply of the current LAYER_FOLDER message

ST_FORWARD	4.Creates a Forward of the current L:AYER_FOLDER message

Data Type

Long


Property OpenExtractedMsg

This Property open the indicated Extracted message

Usage

[form.]CCMsg.OpenExtractedMsg[ = FileName_ExtractedMsg $)

Data Type

String


Property OriginalItemName

This Property return the Name of the current attachment

Usage

VIM_ItemName$=[form.]CCMsg.OriginalItemName

Data Type

String


Property FetchItemNum

This Property sets and returns the current Item number

Usage

[form.]CCMsg.FetchItemNum[ = NewItemNum &)

VIM_ItemNum&=[form.]CCMsg.FetchItemNum

Remarks

You NEED to fetch a item to obtain its class, type, size, path, etc.

Data Type

Long


Property ItemClass

This Property Sets and returns the current item Class

Usage

[form.]CCMsg.ItemClass[ = ItemClass &)

VIM_ItemClass&=[form.]CCMsg.ItemClass

Settings

The ItemClass settings are:

Setting	Decription

VIMSEL_APP_DEFINED	4

VIMSEL_ATTACH	6

VIMSEL_NESTED_MSG	56

VIMSEL_NOTE_PART	62

Data Type

Long


Property ItemType

This Property Sets and returns the current item Type

Usage

[form.]CCMsg.ItemType[ = ItemType $)

VIM_ItemType$=[form.]CCMsg.ItemType

Settings

The ItemType settings are:

Setting	Decription

VIM_TEXT	Simple, unstyled text

VIM_UNWRAPPED_TEXT	Unwrapped, unstyled text

VIM_RTF	Microsoft rich text

VIM_STYLED	Macintosh styled text

VIM_FAX	PCX format FAX image

VIM_PICT	Macintosh picture

VIM_MOVIE	QuickTime sound and Video

VIM_IMAG	Macintosh FAX image part

Data Type

String


Property ItemPath

This Property return the Path of the current attachment

Usage

VIM_ItemPath$=[form.]CCMsg.ItemPath

Data Type

String


Property ItemSize

This Property return the Size of the current attachment

Usage

VIM_ItemSize&=[form.]CCMsg.ItemSize

Data Type

Long


FetchMessage Event, CCMSG Control

Description

Occurs when the you fetch a message in the LAYER_FOLDER or LAYER_CREATE

Syntax

Sub CCMsg1_FetchMessage (Folder As Integer)

Remarks

The Folder value indicate the Layer where is the message.


OpenMessage Event, CCMSG Control

Description

Occurs when the a CCmsg Control object open a message in the LAYER_FOLDER

Syntax

Sub CCMsg1_OpenMessage ()


NewMessageSent Event, CCMSG Control

Description

Occurs when the a CCmsg Control object send a LAYER_CREATE message.

Syntax

Sub CCMsg1_NewMessageSent ()


NewMessage Event, CCMSG Control

Description

Occurs when the a CCmsg Control object create a LAYER_CREATE message.

Syntax

Sub CCMsg1_NewMessage()


SetFromGatewaySession Event, CCMSG Control

Description

Occurs when the a CCmsg Control object needs to set the From header for the LAYER_CREATE message. You only need to set this Header if you are using a Gateway Session

Syntax

Sub CCMsg1_SetFromGatewaySession ()


FolderMsgNotAvailable Event, CCMSG Control

Description

Occurs when the a CCmsg Control object close a LAYER_FOLDER message.

Syntax

Sub CCMsg1_FolderMsgNotAvailable ()


FolderMsgNotAvailable Event, CCMSG Control

Description

Occurs when the a CCmsg Control object close a LAYER_FOLDER message.

Syntax

Sub CCMsg1_FolderMsgNotAvailable ()