home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
World of Shareware - Software Farm 2
/
wosw_2.zip
/
wosw_2
/
DESKTOP
/
AM_21D.ZIP
/
DDE.TX_
< prev
next >
Wrap
Text File
|
1992-12-06
|
15KB
|
197 lines
This file contains information about Address Manager and DDE support.
/****************************************************************************
* *
* Here is the DDE protocol *
* *
* *
* Address Manager currently acts only as a SERVER application for DDE *
* conversations. This means *any* application can ask AM for data, *
* such as an address or a phone number. *
* *
* The following protocol is used and must be followed by any application *
* wishing to get data from AM: *
* *
* 1. Initiate the conversation with AM *
* *
* AppName Topic *
* ------- ----- *
* Address <name of AM data file> (ie. mynames.add) *
* *
* 2. Request data from AM *
* *
* Using W4W macro lang, this can be done using *
* DDERequest() function. For example, the following *
* request could be made: *
* *
* DDERequest(ChanNum, "a Smith"); *
* *
* This would request all names from AM that match "Smith" *
* *
* *
* If you are programming in the SDK, the client app would *
* post a WM_DDE_REQUEST message to AM with the appropriate *
* parameters passed in wParam and lParam. The HIWORD(lParam) *
* in this case would be CF_TEXT. *
* *
* *
* The types of data that can be requested are outlined below. The *
* syntax is as follows: *
* *
* <> indicate a required field, and the text between <> will *
* describe what goes there. *
* *
* {} indicate an optional field *
* *
* [] indicate a logical entity. See the protocol for "complete *
* control" below to see what I mean. *
* *
* *
* 1===> The protocol for addresses is: *
* *
* a <exact name, as entered in AM, you want an address for> *
* *
* NOTE: THIS PROTOCOL IS OUTDATED AND IS SUPERCEDED BY THE *
* "Complete Control" PROTOCOL BELOW. THIS IS PROVIDED *
* FOR BACKWARD COMPATIBILITY ONLY. *
* *
* 2===> The protocol for phone numbers is: *
* *
* p h{wf} <exact name, as entered in AM, you want phone #'s for> *
* *
* Here, h is for "home" phone, the w for "work" and the f for "fax" *
* You may request any or all of the phone numbers for a given person. *
* *
* NOTE: THIS PROTOCOL IS OUTDATED AND IS SUPERCEDED BY THE *
* "Complete Control" PROTOCOL BELOW. THIS IS PROVIDED *
* FOR BACKWARD COMPATIBILITY ONLY. *
* *
* 3===> The protocol for retrieving the number of names in a specified *
* list is: *
* *
* c [List] *
* *
* where the call looks like DDERequest(ChanNum, "c [Current List]") *
* The [List] field is REQUIRED, but can be set to [Current List] to *
* return a count for the current list AM is showing. *
* This does NOT return the total entries in the file, just the *
* entries for the specified list. To get a total count in the file, *
* specify [All Addresses] as the List *
* *
* *
* 4===> The protocol for retreiving the name of the current list being *
* shown in Address Manager is: *
* *
* *
* l *
* *
* where the call looks like DDERequest(ChanNum, "l"). So if you are *
* currently viewing the "Friends" list in Address Manager, this *
* call will return "Friends" *
* *
* 5===> The "COMPLETE CONTROL" Protocol *
* *
* *
* The protocol for complete control of what you want and where you *
* want it from is: *
* *
* uf <[List]> {[Name]} <Format String> *
* *
* where: *
* *
* List is: "All Addresses" or a user defined list. This field *
* is REQUIRED. To retreive data from the current list *
* specify [Current List] in this field *
* *
* Name is: Exact name, as entered in Address Manager. This field *
* is OPTIONAL, and if left out will return the first *
* name for the list specified in [List] *
* *
* Format String is: Definition of what data to return, for the *
* requested name. This field is REQUIRED *
* *
* The format string can be made up of one or *
* more of the following: *
* *
* String Returns *
* ------ ------- *
* %NAME Sal. + Full Name *
* %SAL Salutation *
* %FN First Name *
* %MN Middle Name *
* %LN Last Name *
* %CO Company *
* %A1 Address Line 1 *
* %A2 Address Line 2 *
* %A3 Address Line 3 *
* %CITY City *
* %ST State *
* %ZIP Zip *
* %HP Home Phone *
* %WP Work Phone *
* %WE Work Extension *
* %FP Fax Phone *
* %HISB His Birthday *
* %HERB Her Birthday *
* %AN Anniversary *
* %CMT Comments *
* %CR Inserts New Line *
* %TAB Inserts TAB char *
* %<any text up to 50 chars> Inserts exact text *
* *
* A typical format string might look like this: *
* *
* *
* %FN% %MN% %LN%CR%A1%CR%A2%CR%A3%CR%CITY% %ST%, %ZIP *
* *
* *
* Example of how to use this protocol: *
* *
* *
* uf [Friends] %FN% %MN% %LN%CR *
* *
* This example will retrieve information from the first entry in *
* the Friends list. The First Name, Middle Name and Last Name *
* followed by a carriage return/line feed will be returned. Note *
* how a space char has been inserted between each names, using *
* the "% " format string. *
* *
* *
* IMPORTANT INFORMATION *
* ===================== *
* *
* * The total length of the DDE string sent to Address Manager *
* can not exceed 512 bytes. *
* *
* * The total length of an idividual part of the format string *
* can not exceed 50 bytes. See the last entry in the table *
* above to see what I'm talking about. *
* *
* * Note that this protocol will give you either a specific name *
* from a specific list, or the first name from a specific list. *
* Once you have used this protocol, you can use the next *
* protocol (described below) to get the next name from the *
* same list. *
* *
* *
* 6===> The "COMPLETE CONTROL" Protocol's partner *
* *
* The protocl to retrieve the next name from a specified list (as *
* specified in the previous protocol) is: *
* *
* un *
* *
* This protocol can only be used AFTER a call has been made using the *
* previously mentioned protocol. Essentially, you use the "uf" *
* protocol to get the first name, specify the list you want to get *
* information from, specify *what* information you want, and then *
* you use this protocol to get information for the next name in the *
* list. *
* *
* 3. Terminate the DDE conversation. *
* *
* *
****************************************************************************/