#define COUNTRY_CODE_SIZE 10 #define AREA_CODE_SIZE 10 #define TELEPHONE_NUMBER_SIZE 50 #define ROUTING_NAME_SIZE 150 #define CANONICAL_NUMBER_SIZE (10+COUNTRY_CODE_SIZE+AREA_CODE_SIZE+TELEPHONE_NUMBER_SIZE+ROUTING_NAME_SIZE) typedef struct tagPARSEDTELNUMBER { TCHAR szCountryCode[COUNTRY_CODE_SIZE+1]; // country code TCHAR szAreaCode[AREA_CODE_SIZE+1]; // area code TCHAR szTelNumber[TELEPHONE_NUMBER_SIZE+1]; // telephone number TCHAR szRoutingName[ROUTING_NAME_SIZE+1]; // routing name within the tel number destination } PARSEDTELNUMBER, *LPPARSEDTELNUMBER; BOOL EncodeFaxAddress(LPTSTR lpszFaxAddr, LPPARSEDTELNUMBER lpParsedFaxAddr); BOOL DecodeFaxAddress(LPTSTR lpszFaxAddr, LPPARSEDTELNUMBER lpParsedFaxAddr); /* * Function pointer prototypes for fax config functions */ typedef BOOL (* PFN_DECODE_FAX_ADDRESS)(LPTSTR lpszFaxAddr, LPPARSEDTELNUMBER lpParsedFaxAddr); typedef BOOL (* PFN_ENCODE_FAX_ADDRESS)(LPTSTR lpszFaxAddr, LPPARSEDTELNUMBER lpParsedFaxAddr); #define FAXCFG_DECODE_FAX_ADDRESS TEXT("DecodeFaxAddress") #define FAXCFG_ENCODE_FAX_ADDRESS TEXT("EncodeFaxAddress") #define FAXCFG_DLL TEXT("awfxcg32.dll")