|
|
//----------------------------------------------------------------------------
//
// Copyright (c) 1997-1999 Microsoft Corporation
// All rights reserved.
//
// File Name:
// tapi.c
//
// Description:
// This file contains the dialog procedure for the telephone settings
// (IDD_TAPI).
//
//----------------------------------------------------------------------------
#include "pch.h"
#include "resource.h"
#define LengthOf(x) ( sizeof(x) / sizeof(COUNTRYCODE_STRUCT) )
typedef struct _COUNTRYCODE_STRUCT {
DWORD dwCountryCode; TCHAR *szCountryName;
} COUNTRYCODE_STRUCT;
COUNTRYCODE_STRUCT rgCountryCodeArray[243]; static TCHAR *StrDontSpecifySetting;
static VOID LoadCountryStrings( VOID );
//----------------------------------------------------------------------------
//
// Function: IsValidAreaCode
//
// Purpose: Analyzes the area code the user entered to see if it is a valid
// area code.
//
// Arguments: VOID
//
// Returns: VOID
//
//----------------------------------------------------------------------------
static BOOL IsValidAreaCode( VOID ) {
INT i;
//
// Leaving it blank is valid
//
if( GenSettings.szAreaCode[0] == _T('\0') ) { return( TRUE ); }
// ISSUE-2002/02/28-stelo- make sure these are the only valid chars on localized builds of NT as well
//
// Only valid chars for area code are 0 through 9
//
for( i = 0; GenSettings.szAreaCode[i] != _T('\0'); i++ ) {
if( GenSettings.szAreaCode[i] < _T('0') || GenSettings.szAreaCode[i] > _T('9') ) { return( FALSE ); }
}
return( TRUE );
}
//----------------------------------------------------------------------------
//
// Function: IsValidOutsideLine
//
// Purpose: Analyzes the outside line the user entered to see if it is a valid
// outside line.
//
// Arguments: VOID
//
// Returns: VOID
//
//----------------------------------------------------------------------------
static BOOL IsValidOutsideLine( VOID ) {
INT i;
//
// Leaving it blank is valid
//
if( GenSettings.szOutsideLine[0] == _T('\0') ) { return( TRUE ); }
// ISSUE-2002/02/28-stelo- make sure these are the only valid chars on localized builds of NT as well
//
// Only valid chars for outside line are 0 through 9 and * # ,
//
for( i = 0; GenSettings.szOutsideLine[i] != _T('\0'); i++ ) {
if( GenSettings.szOutsideLine[i] < _T('0') || GenSettings.szOutsideLine[i] > _T('9') ) {
//
// Only acceptable chars outside the 0-9 range are are * # ,
//
if( GenSettings.szOutsideLine[i] != _T('*') && GenSettings.szOutsideLine[i] != _T('#') && GenSettings.szOutsideLine[i] != _T(',') ) { return( FALSE ); }
}
}
return( TRUE );
}
//----------------------------------------------------------------------------
//
// Function: OnTapiInitDialog
//
// Purpose:
//
// Arguments: IN HWND hwnd - handle to the dialog box
//
// Returns: VOID
//
//----------------------------------------------------------------------------
VOID OnTapiInitDialog( IN HWND hwnd ) {
INT i; INT_PTR iIndex = 0;
//
// Load strings from resources
//
StrDontSpecifySetting = MyLoadString( IDS_DONTSPECIFYSETTING );
LoadCountryStrings();
// Disable IME so DBCS characters can not be entered in fields
//
ImmAssociateContext(GetDlgItem(hwnd, IDC_AREACODE), NULL); ImmAssociateContext(GetDlgItem(hwnd, IDC_OUTSIDELINE), NULL);
//
// Set the text limit on the edit boxes to MAX_PHONE_LENGTH
//
SendDlgItemMessage( hwnd, IDC_AREACODE, EM_LIMITTEXT, (WPARAM) MAX_PHONE_LENGTH, (LPARAM) 0 );
SendDlgItemMessage( hwnd, IDC_OUTSIDELINE, EM_LIMITTEXT, (WPARAM) MAX_PHONE_LENGTH, (LPARAM) 0 );
//
// Load the combo box with all the possible countries
// (it also loads the box with the "Don't specify setting")
//
for( i = 0; i < LengthOf(rgCountryCodeArray); i++ ) {
SendDlgItemMessage( hwnd, IDC_COUNTRYCODE, CB_ADDSTRING, (WPARAM) 0, (LPARAM) rgCountryCodeArray[i].szCountryName );
}
//
// Load the Tone/Pulse dialog with the strings Tone, Pulse and Don't specify
// and associate a unique number to them
//
iIndex = SendDlgItemMessage( hwnd, IDC_CB_TONEPULSE, CB_ADDSTRING, (WPARAM) 0, (LPARAM) MyLoadString( IDS_TONE ) );
SendDlgItemMessage( hwnd, IDC_CB_TONEPULSE, CB_SETITEMDATA, (WPARAM) iIndex, (LPARAM) TONE );
iIndex = SendDlgItemMessage( hwnd, IDC_CB_TONEPULSE, CB_ADDSTRING, (WPARAM) 0, (LPARAM) MyLoadString( IDS_PULSE ) );
SendDlgItemMessage( hwnd, IDC_CB_TONEPULSE, CB_SETITEMDATA, (WPARAM) iIndex, (LPARAM) PULSE );
iIndex = SendDlgItemMessage( hwnd, IDC_CB_TONEPULSE, CB_ADDSTRING, (WPARAM) 0, (LPARAM) StrDontSpecifySetting );
SendDlgItemMessage( hwnd, IDC_CB_TONEPULSE, CB_SETITEMDATA, (WPARAM) iIndex, (LPARAM) DONTSPECIFYSETTING );
}
//----------------------------------------------------------------------------
//
// Function: OnTapiSetActive
//
// Purpose:
//
// Arguments: IN HWND hwnd - handle to the dialog box
//
// Returns: VOID
//
//----------------------------------------------------------------------------
VOID OnTapiSetActive( IN HWND hwnd ) {
INT i; INT_PTR iReturnValue = 0;
//
// Find the string corresponding to the country code
//
for( i = 0; i < LengthOf(rgCountryCodeArray); i++ ) {
if( rgCountryCodeArray[i].dwCountryCode == GenSettings.dwCountryCode ) {
iReturnValue = SendDlgItemMessage( hwnd, IDC_COUNTRYCODE, CB_SELECTSTRING, (WPARAM) -1, (LPARAM) rgCountryCodeArray[i].szCountryName );
break; // found the item so break out of the for loop
}
}
//
// if the country code was not found just select the 1st item
//
if( i >= LengthOf(rgCountryCodeArray) || iReturnValue == CB_ERR ) {
SendDlgItemMessage( hwnd, IDC_COUNTRYCODE, CB_SETCURSEL, (WPARAM) 0, (LPARAM) 0 );
}
SetWindowText( GetDlgItem( hwnd, IDC_AREACODE ), GenSettings.szAreaCode );
SetWindowText( GetDlgItem( hwnd, IDC_OUTSIDELINE ), GenSettings.szOutsideLine );
//
// Set the dialing method to Tone, Pulse or Don't specify
//
if( GenSettings.iDialingMethod == TONE ) {
SendDlgItemMessage( hwnd, IDC_CB_TONEPULSE, CB_SETCURSEL, (WPARAM) 0, (LPARAM) 0 );
} else if( GenSettings.iDialingMethod == PULSE ) {
SendDlgItemMessage( hwnd, IDC_CB_TONEPULSE, CB_SETCURSEL, (WPARAM) 1, (LPARAM) 0 );
} else {
SendDlgItemMessage( hwnd, IDC_CB_TONEPULSE, CB_SETCURSEL, (WPARAM) 2, (LPARAM) 0 );
}
WIZ_BUTTONS(hwnd, PSWIZB_BACK | PSWIZB_NEXT); }
//----------------------------------------------------------------------------
//
// Function: OnWizNextTapi
//
// Purpose: Store the setting from the TAPI page into the appropriate
// global variables
//
// Arguments: IN HWND hwnd - handle to the dialog box
//
// Returns: BOOL
//
//----------------------------------------------------------------------------
BOOL OnWizNextTapi( IN HWND hwnd ) {
INT i; INT_PTR iIndex; INT iData; TCHAR szBuffer[MAX_STRING_LEN]; BOOL bStayOnThisPage = FALSE; BOOL bResult = TRUE;
//
// Grab the country code
//
iIndex = SendDlgItemMessage( hwnd, IDC_COUNTRYCODE, CB_GETCURSEL, (WPARAM) 0, (LPARAM) 0 );
SendDlgItemMessage( hwnd, IDC_COUNTRYCODE, CB_GETLBTEXT, (WPARAM) iIndex, (LPARAM) szBuffer );
for(i = 0; i < LengthOf(rgCountryCodeArray); i++) {
if( lstrcmp( szBuffer, rgCountryCodeArray[i].szCountryName ) == 0 ) {
GenSettings.dwCountryCode = rgCountryCodeArray[i].dwCountryCode;
break; // found it, so break
}
}
//
// if, for some reason, the country doesn't match, just set it to US
//
if( i >= LengthOf(rgCountryCodeArray) ) { //
// Somehow a country that was not known about was specified
//
AssertMsg(FALSE, "Programming error: Unknown TAPI country code");
GenSettings.dwCountryCode = 1;
}
//
// Grab the Area code
//
GetWindowText( GetDlgItem( hwnd, IDC_AREACODE ), GenSettings.szAreaCode, MAX_PHONE_LENGTH + 1 );
//
// Grab the outside line number
//
GetWindowText( GetDlgItem( hwnd, IDC_OUTSIDELINE ), GenSettings.szOutsideLine, MAX_PHONE_LENGTH + 1 );
//
// Grab if it is Tone or Pulse dialing (or Don't Specify)
//
iIndex = SendDlgItemMessage( hwnd, IDC_CB_TONEPULSE, CB_GETCURSEL, (WPARAM) 0, (LPARAM) 0 );
GenSettings.iDialingMethod = (int)SendDlgItemMessage( hwnd, IDC_CB_TONEPULSE, CB_GETITEMDATA, (WPARAM) iIndex, (LPARAM) szBuffer );
if( GenSettings.iDialingMethod == CB_ERR ) {
AssertMsg( FALSE, "Programming error: Bad item data for Tone/Pulse dialing" );
GenSettings.iDialingMethod = TONE;
}
if( ! IsValidAreaCode() ) { bResult = FALSE;
ReportErrorId( hwnd, MSGTYPE_ERR, IDS_ERR_BAD_AREA_CODE ); }
if( ! IsValidOutsideLine() ) { bResult = FALSE;
ReportErrorId( hwnd, MSGTYPE_ERR, IDS_ERR_BAD_OUTSIDE_LINE ); }
return ( bResult );
}
//----------------------------------------------------------------------------
//
// Function: DlgTapiPage
//
// Purpose:
//
// Arguments: standard Win32 dialog proc arguments
//
// Returns: standard Win32 dialog proc return value -- whether the message
// was handled or not
//
//----------------------------------------------------------------------------
INT_PTR CALLBACK DlgTapiPage( IN HWND hwnd, IN UINT uMsg, IN WPARAM wParam, IN LPARAM lParam) {
BOOL bStatus = TRUE;
switch( uMsg ) {
case WM_INITDIALOG: {
OnTapiInitDialog( hwnd );
break;
}
case WM_NOTIFY: {
LPNMHDR pnmh = (LPNMHDR)lParam;
switch( pnmh->code ) {
case PSN_QUERYCANCEL:
WIZ_CANCEL(hwnd); break;
case PSN_SETACTIVE: {
g_App.dwCurrentHelp = IDH_TELE_PHNY;
OnTapiSetActive( hwnd ); break;
} case PSN_WIZBACK:
bStatus = FALSE; break;
case PSN_WIZNEXT:
if ( !OnWizNextTapi( hwnd ) ) WIZ_FAIL(hwnd); else bStatus = FALSE;
break;
case PSN_HELP: WIZ_HELP(); break;
default:
break; }
break; }
default: bStatus = FALSE; break;
}
return bStatus;
}
static VOID LoadCountryStrings( VOID ) {
rgCountryCodeArray[0].dwCountryCode = 1; rgCountryCodeArray[0].szCountryName = MyLoadString( IDS_United_States_of_America );
rgCountryCodeArray[1].dwCountryCode = 101; rgCountryCodeArray[1].szCountryName = MyLoadString( IDS_Anguilla );
rgCountryCodeArray[2].dwCountryCode = 102; rgCountryCodeArray[2].szCountryName = MyLoadString( IDS_Antigua );
rgCountryCodeArray[3].dwCountryCode = 103; rgCountryCodeArray[3].szCountryName = MyLoadString( IDS_Bahamas );
rgCountryCodeArray[4].dwCountryCode = 104; rgCountryCodeArray[4].szCountryName = MyLoadString( IDS_Barbados );
rgCountryCodeArray[5].dwCountryCode = 105; rgCountryCodeArray[5].szCountryName = MyLoadString( IDS_Bermuda );
rgCountryCodeArray[6].dwCountryCode = 106; rgCountryCodeArray[6].szCountryName = MyLoadString( IDS_British_Virgin_Islands );
rgCountryCodeArray[7].dwCountryCode = 107; rgCountryCodeArray[7].szCountryName = MyLoadString( IDS_Canada );
rgCountryCodeArray[8].dwCountryCode = 108; rgCountryCodeArray[8].szCountryName = MyLoadString( IDS_Cayman_Islands );
rgCountryCodeArray[9].dwCountryCode = 109; rgCountryCodeArray[9].szCountryName = MyLoadString( IDS_Dominica );
rgCountryCodeArray[10].dwCountryCode = 110; rgCountryCodeArray[10].szCountryName = MyLoadString( IDS_Dominican_Republic );
rgCountryCodeArray[11].dwCountryCode = 111; rgCountryCodeArray[11].szCountryName = MyLoadString( IDS_Grenada );
rgCountryCodeArray[12].dwCountryCode = 112; rgCountryCodeArray[12].szCountryName = MyLoadString( IDS_Jamaica );
rgCountryCodeArray[13].dwCountryCode = 113; rgCountryCodeArray[13].szCountryName = MyLoadString( IDS_Montserrat );
rgCountryCodeArray[14].dwCountryCode = 114; rgCountryCodeArray[14].szCountryName = MyLoadString( IDS_Nevis );
rgCountryCodeArray[15].dwCountryCode = 115; rgCountryCodeArray[15].szCountryName = MyLoadString( IDS_St__Kitts );
rgCountryCodeArray[16].dwCountryCode = 116; rgCountryCodeArray[16].szCountryName = MyLoadString( IDS_St__Vincent_Grenadines );
rgCountryCodeArray[17].dwCountryCode = 117; rgCountryCodeArray[17].szCountryName = MyLoadString( IDS_Trinidad_and_Tobago );
rgCountryCodeArray[18].dwCountryCode = 118; rgCountryCodeArray[18].szCountryName = MyLoadString( IDS_Turks_and_Caicos_Islands );
rgCountryCodeArray[19].dwCountryCode = 120; rgCountryCodeArray[19].szCountryName = MyLoadString( IDS_Barbuda );
rgCountryCodeArray[20].dwCountryCode = 121; rgCountryCodeArray[20].szCountryName = MyLoadString( IDS_Puerto_Rico );
rgCountryCodeArray[21].dwCountryCode = 122; rgCountryCodeArray[21].szCountryName = MyLoadString( IDS_Saint_Lucia );
rgCountryCodeArray[22].dwCountryCode = 123; rgCountryCodeArray[22].szCountryName = MyLoadString( IDS_United_States_Virgin_Is );
rgCountryCodeArray[23].dwCountryCode = 20; rgCountryCodeArray[23].szCountryName = MyLoadString( IDS_Egypt );
rgCountryCodeArray[24].dwCountryCode = 212; rgCountryCodeArray[24].szCountryName = MyLoadString( IDS_Morocco );
rgCountryCodeArray[25].dwCountryCode = 213; rgCountryCodeArray[25].szCountryName = MyLoadString( IDS_Algeria );
rgCountryCodeArray[26].dwCountryCode = 216; rgCountryCodeArray[26].szCountryName = MyLoadString( IDS_Tunisia );
rgCountryCodeArray[27].dwCountryCode = 218; rgCountryCodeArray[27].szCountryName = MyLoadString( IDS_Libya );
rgCountryCodeArray[28].dwCountryCode = 220; rgCountryCodeArray[28].szCountryName = MyLoadString( IDS_Gambia );
rgCountryCodeArray[29].dwCountryCode = 221; rgCountryCodeArray[29].szCountryName = MyLoadString( IDS_Senegal );
rgCountryCodeArray[30].dwCountryCode = 222; rgCountryCodeArray[30].szCountryName = MyLoadString( IDS_Mauritania );
rgCountryCodeArray[31].dwCountryCode = 223; rgCountryCodeArray[31].szCountryName = MyLoadString( IDS_Mali );
rgCountryCodeArray[32].dwCountryCode = 224; rgCountryCodeArray[32].szCountryName = MyLoadString( IDS_Guinea );
rgCountryCodeArray[33].dwCountryCode = 225; rgCountryCodeArray[33].szCountryName = MyLoadString( IDS_Cote_d_Ivoire );
rgCountryCodeArray[34].dwCountryCode = 226; rgCountryCodeArray[34].szCountryName = MyLoadString( IDS_Burkina_Faso );
rgCountryCodeArray[35].dwCountryCode = 227; rgCountryCodeArray[35].szCountryName = MyLoadString( IDS_Niger );
rgCountryCodeArray[36].dwCountryCode = 228; rgCountryCodeArray[36].szCountryName = MyLoadString( IDS_Togo );
rgCountryCodeArray[37].dwCountryCode = 229; rgCountryCodeArray[37].szCountryName = MyLoadString( IDS_Benin );
rgCountryCodeArray[38].dwCountryCode = 230; rgCountryCodeArray[38].szCountryName = MyLoadString( IDS_Mauritius );
rgCountryCodeArray[39].dwCountryCode = 231; rgCountryCodeArray[39].szCountryName = MyLoadString( IDS_Liberia );
rgCountryCodeArray[40].dwCountryCode = 232; rgCountryCodeArray[40].szCountryName = MyLoadString( IDS_Sierra_Leone );
rgCountryCodeArray[41].dwCountryCode = 233; rgCountryCodeArray[41].szCountryName = MyLoadString( IDS_Ghana );
rgCountryCodeArray[42].dwCountryCode = 234; rgCountryCodeArray[42].szCountryName = MyLoadString( IDS_Nigeria );
rgCountryCodeArray[43].dwCountryCode = 235; rgCountryCodeArray[43].szCountryName = MyLoadString( IDS_Chad );
rgCountryCodeArray[44].dwCountryCode = 236; rgCountryCodeArray[44].szCountryName = MyLoadString( IDS_Central_African_Rep );
rgCountryCodeArray[45].dwCountryCode = 237; rgCountryCodeArray[45].szCountryName = MyLoadString( IDS_Cameroon );
rgCountryCodeArray[46].dwCountryCode = 238; rgCountryCodeArray[46].szCountryName = MyLoadString( IDS_Cape_Verde );
rgCountryCodeArray[47].dwCountryCode = 239; rgCountryCodeArray[47].szCountryName = MyLoadString( IDS_Sao_Tome_and_Principe );
rgCountryCodeArray[48].dwCountryCode = 240; rgCountryCodeArray[48].szCountryName = MyLoadString( IDS_Equatorial_Guinea );
rgCountryCodeArray[49].dwCountryCode = 241; rgCountryCodeArray[49].szCountryName = MyLoadString( IDS_Gabon );
rgCountryCodeArray[50].dwCountryCode = 242; rgCountryCodeArray[50].szCountryName = MyLoadString( IDS_Congo );
rgCountryCodeArray[51].dwCountryCode = 243; rgCountryCodeArray[51].szCountryName = MyLoadString( IDS_Dem_Rep_of_the_Congo );
rgCountryCodeArray[52].dwCountryCode = 244; rgCountryCodeArray[52].szCountryName = MyLoadString( IDS_Angola );
rgCountryCodeArray[53].dwCountryCode = 245; rgCountryCodeArray[53].szCountryName = MyLoadString( IDS_Guinea_Bissau );
rgCountryCodeArray[54].dwCountryCode = 246; rgCountryCodeArray[54].szCountryName = MyLoadString( IDS_Diego_Garcia );
rgCountryCodeArray[55].dwCountryCode = 247; rgCountryCodeArray[55].szCountryName = MyLoadString( IDS_Ascension_Island );
rgCountryCodeArray[56].dwCountryCode = 248; rgCountryCodeArray[56].szCountryName = MyLoadString( IDS_Seychelles );
rgCountryCodeArray[57].dwCountryCode = 249; rgCountryCodeArray[57].szCountryName = MyLoadString( IDS_Sudan );
rgCountryCodeArray[58].dwCountryCode = 250; rgCountryCodeArray[58].szCountryName = MyLoadString( IDS_Rwanda );
rgCountryCodeArray[59].dwCountryCode = 251; rgCountryCodeArray[59].szCountryName = MyLoadString( IDS_Ethiopia );
rgCountryCodeArray[60].dwCountryCode = 252; rgCountryCodeArray[60].szCountryName = MyLoadString( IDS_Somalia );
rgCountryCodeArray[61].dwCountryCode = 253; rgCountryCodeArray[61].szCountryName = MyLoadString( IDS_Djibouti );
rgCountryCodeArray[62].dwCountryCode = 254; rgCountryCodeArray[62].szCountryName = MyLoadString( IDS_Kenya );
rgCountryCodeArray[63].dwCountryCode = 255; rgCountryCodeArray[63].szCountryName = MyLoadString( IDS_Tanzania );
rgCountryCodeArray[64].dwCountryCode = 256; rgCountryCodeArray[64].szCountryName = MyLoadString( IDS_Uganda );
rgCountryCodeArray[65].dwCountryCode = 257; rgCountryCodeArray[65].szCountryName = MyLoadString( IDS_Burundi );
rgCountryCodeArray[66].dwCountryCode = 258; rgCountryCodeArray[66].szCountryName = MyLoadString( IDS_Mozambique );
rgCountryCodeArray[67].dwCountryCode = 260; rgCountryCodeArray[67].szCountryName = MyLoadString( IDS_Zambia );
rgCountryCodeArray[68].dwCountryCode = 261; rgCountryCodeArray[68].szCountryName = MyLoadString( IDS_Madagascar );
rgCountryCodeArray[69].dwCountryCode = 262; rgCountryCodeArray[69].szCountryName = MyLoadString( IDS_Reunion_Island );
rgCountryCodeArray[70].dwCountryCode = 263; rgCountryCodeArray[70].szCountryName = MyLoadString( IDS_Zimbabwe );
rgCountryCodeArray[71].dwCountryCode = 264; rgCountryCodeArray[71].szCountryName = MyLoadString( IDS_Namibia );
rgCountryCodeArray[72].dwCountryCode = 265; rgCountryCodeArray[72].szCountryName = MyLoadString( IDS_Malawi );
rgCountryCodeArray[73].dwCountryCode = 266; rgCountryCodeArray[73].szCountryName = MyLoadString( IDS_Lesotho );
rgCountryCodeArray[74].dwCountryCode = 267; rgCountryCodeArray[74].szCountryName = MyLoadString( IDS_Botswana );
rgCountryCodeArray[75].dwCountryCode = 268; rgCountryCodeArray[75].szCountryName = MyLoadString( IDS_Swaziland );
rgCountryCodeArray[76].dwCountryCode = 269; rgCountryCodeArray[76].szCountryName = MyLoadString( IDS_Mayotte_Island );
rgCountryCodeArray[77].dwCountryCode = 2691; rgCountryCodeArray[77].szCountryName = MyLoadString( IDS_Comoros );
rgCountryCodeArray[78].dwCountryCode = 27; rgCountryCodeArray[78].szCountryName = MyLoadString( IDS_South_Africa );
rgCountryCodeArray[79].dwCountryCode = 290; rgCountryCodeArray[79].szCountryName = MyLoadString( IDS_St__Helena );
rgCountryCodeArray[80].dwCountryCode = 291; rgCountryCodeArray[80].szCountryName = MyLoadString( IDS_Eritrea );
rgCountryCodeArray[81].dwCountryCode = 297; rgCountryCodeArray[81].szCountryName = MyLoadString( IDS_Aruba );
rgCountryCodeArray[82].dwCountryCode = 298; rgCountryCodeArray[82].szCountryName = MyLoadString( IDS_Faeroe_Islands );
rgCountryCodeArray[83].dwCountryCode = 299; rgCountryCodeArray[83].szCountryName = MyLoadString( IDS_Greenland );
rgCountryCodeArray[84].dwCountryCode = 30; rgCountryCodeArray[84].szCountryName = MyLoadString( IDS_Greece );
rgCountryCodeArray[85].dwCountryCode = 31; rgCountryCodeArray[85].szCountryName = MyLoadString( IDS_Netherlands );
rgCountryCodeArray[86].dwCountryCode = 32; rgCountryCodeArray[86].szCountryName = MyLoadString( IDS_Belgium );
rgCountryCodeArray[87].dwCountryCode = 33; rgCountryCodeArray[87].szCountryName = MyLoadString( IDS_France );
rgCountryCodeArray[88].dwCountryCode = 377; rgCountryCodeArray[88].szCountryName = MyLoadString( IDS_Monaco );
rgCountryCodeArray[89].dwCountryCode = 34; rgCountryCodeArray[89].szCountryName = MyLoadString( IDS_Spain );
rgCountryCodeArray[90].dwCountryCode = 350; rgCountryCodeArray[90].szCountryName = MyLoadString( IDS_Gibraltar );
rgCountryCodeArray[91].dwCountryCode = 351; rgCountryCodeArray[91].szCountryName = MyLoadString( IDS_Portugal );
rgCountryCodeArray[92].dwCountryCode = 352; rgCountryCodeArray[92].szCountryName = MyLoadString( IDS_Luxembourg );
rgCountryCodeArray[93].dwCountryCode = 353; rgCountryCodeArray[93].szCountryName = MyLoadString( IDS_Ireland );
rgCountryCodeArray[94].dwCountryCode = 354; rgCountryCodeArray[94].szCountryName = MyLoadString( IDS_Iceland );
rgCountryCodeArray[95].dwCountryCode = 355; rgCountryCodeArray[95].szCountryName = MyLoadString( IDS_Albania );
rgCountryCodeArray[96].dwCountryCode = 356; rgCountryCodeArray[96].szCountryName = MyLoadString( IDS_Malta );
rgCountryCodeArray[97].dwCountryCode = 357; rgCountryCodeArray[97].szCountryName = MyLoadString( IDS_Cyprus );
rgCountryCodeArray[98].dwCountryCode = 358; rgCountryCodeArray[98].szCountryName = MyLoadString( IDS_Finland );
rgCountryCodeArray[99].dwCountryCode = 359; rgCountryCodeArray[99].szCountryName = MyLoadString( IDS_Bulgaria );
rgCountryCodeArray[100].dwCountryCode = 36; rgCountryCodeArray[100].szCountryName = MyLoadString( IDS_Hungary );
rgCountryCodeArray[101].dwCountryCode = 370; rgCountryCodeArray[101].szCountryName = MyLoadString( IDS_Lithuania );
rgCountryCodeArray[102].dwCountryCode = 371; rgCountryCodeArray[102].szCountryName = MyLoadString( IDS_Latvia );
rgCountryCodeArray[103].dwCountryCode = 372; rgCountryCodeArray[103].szCountryName = MyLoadString( IDS_Estonia );
rgCountryCodeArray[104].dwCountryCode = 373; rgCountryCodeArray[104].szCountryName = MyLoadString( IDS_Moldova );
rgCountryCodeArray[105].dwCountryCode = 374; rgCountryCodeArray[105].szCountryName = MyLoadString( IDS_Armenia );
rgCountryCodeArray[106].dwCountryCode = 375; rgCountryCodeArray[106].szCountryName = MyLoadString( IDS_Belarus );
rgCountryCodeArray[107].dwCountryCode = 376; rgCountryCodeArray[107].szCountryName = MyLoadString( IDS_Andorra );
rgCountryCodeArray[108].dwCountryCode = 378; rgCountryCodeArray[108].szCountryName = MyLoadString( IDS_San_Marino );
rgCountryCodeArray[109].dwCountryCode = 379; rgCountryCodeArray[109].szCountryName = MyLoadString( IDS_Vatican_City );
rgCountryCodeArray[110].dwCountryCode = 380; rgCountryCodeArray[110].szCountryName = MyLoadString( IDS_Ukraine );
rgCountryCodeArray[111].dwCountryCode = 381; rgCountryCodeArray[111].szCountryName = MyLoadString( IDS_Yugoslavia );
rgCountryCodeArray[112].dwCountryCode = 385; rgCountryCodeArray[112].szCountryName = MyLoadString( IDS_Croatia );
rgCountryCodeArray[113].dwCountryCode = 386; rgCountryCodeArray[113].szCountryName = MyLoadString( IDS_Slovenia );
rgCountryCodeArray[114].dwCountryCode = 387; rgCountryCodeArray[114].szCountryName = MyLoadString( IDS_Bosnia_and_Herzegovina );
rgCountryCodeArray[115].dwCountryCode = 389; rgCountryCodeArray[115].szCountryName = MyLoadString( IDS_Former_Yugo_Rep_of_Macedonia );
rgCountryCodeArray[116].dwCountryCode = 39; rgCountryCodeArray[116].szCountryName = MyLoadString( IDS_Italy );
rgCountryCodeArray[117].dwCountryCode = 40; rgCountryCodeArray[117].szCountryName = MyLoadString( IDS_Romania );
rgCountryCodeArray[118].dwCountryCode = 41; rgCountryCodeArray[118].szCountryName = MyLoadString( IDS_Switzerland );
rgCountryCodeArray[119].dwCountryCode = 4101; rgCountryCodeArray[119].szCountryName = MyLoadString( IDS_Liechtenstein );
rgCountryCodeArray[120].dwCountryCode = 42; rgCountryCodeArray[120].szCountryName = MyLoadString( IDS_Czech_Republic );
rgCountryCodeArray[121].dwCountryCode = 4201; rgCountryCodeArray[121].szCountryName = MyLoadString( IDS_Slovakia );
rgCountryCodeArray[122].dwCountryCode = 43; rgCountryCodeArray[122].szCountryName = MyLoadString( IDS_Austria );
rgCountryCodeArray[123].dwCountryCode = 44; rgCountryCodeArray[123].szCountryName = MyLoadString( IDS_United_Kingdom );
rgCountryCodeArray[124].dwCountryCode = 45; rgCountryCodeArray[124].szCountryName = MyLoadString( IDS_Denmark );
rgCountryCodeArray[125].dwCountryCode = 46; rgCountryCodeArray[125].szCountryName = MyLoadString( IDS_Sweden );
rgCountryCodeArray[126].dwCountryCode = 47; rgCountryCodeArray[126].szCountryName = MyLoadString( IDS_Norway );
rgCountryCodeArray[127].dwCountryCode = 48; rgCountryCodeArray[127].szCountryName = MyLoadString( IDS_Poland );
rgCountryCodeArray[128].dwCountryCode = 49; rgCountryCodeArray[128].szCountryName = MyLoadString( IDS_Germany );
rgCountryCodeArray[129].dwCountryCode = 500; rgCountryCodeArray[129].szCountryName = MyLoadString( IDS_Falkland_Islands );
rgCountryCodeArray[130].dwCountryCode = 501; rgCountryCodeArray[130].szCountryName = MyLoadString( IDS_Belize );
rgCountryCodeArray[131].dwCountryCode = 502; rgCountryCodeArray[131].szCountryName = MyLoadString( IDS_Guatemala );
rgCountryCodeArray[132].dwCountryCode = 503; rgCountryCodeArray[132].szCountryName = MyLoadString( IDS_El_Salvador );
rgCountryCodeArray[133].dwCountryCode = 504; rgCountryCodeArray[133].szCountryName = MyLoadString( IDS_Honduras );
rgCountryCodeArray[134].dwCountryCode = 505; rgCountryCodeArray[134].szCountryName = MyLoadString( IDS_Nicaragua );
rgCountryCodeArray[135].dwCountryCode = 506; rgCountryCodeArray[135].szCountryName = MyLoadString( IDS_Costa_Rica );
rgCountryCodeArray[136].dwCountryCode = 507; rgCountryCodeArray[136].szCountryName = MyLoadString( IDS_Panama );
rgCountryCodeArray[137].dwCountryCode = 508; rgCountryCodeArray[137].szCountryName = MyLoadString( IDS_St__Pierre_and_Miquelon );
rgCountryCodeArray[138].dwCountryCode = 509; rgCountryCodeArray[138].szCountryName = MyLoadString( IDS_Haiti );
rgCountryCodeArray[139].dwCountryCode = 51; rgCountryCodeArray[139].szCountryName = MyLoadString( IDS_Peru );
rgCountryCodeArray[140].dwCountryCode = 52; rgCountryCodeArray[140].szCountryName = MyLoadString( IDS_Mexico );
rgCountryCodeArray[141].dwCountryCode = 53; rgCountryCodeArray[141].szCountryName = MyLoadString( IDS_Cuba );
rgCountryCodeArray[142].dwCountryCode = 5399; rgCountryCodeArray[142].szCountryName = MyLoadString( IDS_Guantanamo_Bay );
rgCountryCodeArray[143].dwCountryCode = 54; rgCountryCodeArray[143].szCountryName = MyLoadString( IDS_Argentina );
rgCountryCodeArray[144].dwCountryCode = 55; rgCountryCodeArray[144].szCountryName = MyLoadString( IDS_Brazil );
rgCountryCodeArray[145].dwCountryCode = 56; rgCountryCodeArray[145].szCountryName = MyLoadString( IDS_Chile );
rgCountryCodeArray[146].dwCountryCode = 57; rgCountryCodeArray[146].szCountryName = MyLoadString( IDS_Colombia );
rgCountryCodeArray[147].dwCountryCode = 58; rgCountryCodeArray[147].szCountryName = MyLoadString( IDS_Venezuela );
rgCountryCodeArray[148].dwCountryCode = 590; rgCountryCodeArray[148].szCountryName = MyLoadString( IDS_Guadeloupe );
rgCountryCodeArray[149].dwCountryCode = 5901; rgCountryCodeArray[149].szCountryName = MyLoadString( IDS_French_Antilles );
rgCountryCodeArray[150].dwCountryCode = 591; rgCountryCodeArray[150].szCountryName = MyLoadString( IDS_Bolivia );
rgCountryCodeArray[151].dwCountryCode = 592; rgCountryCodeArray[151].szCountryName = MyLoadString( IDS_Guyana );
rgCountryCodeArray[152].dwCountryCode = 593; rgCountryCodeArray[152].szCountryName = MyLoadString( IDS_Ecuador );
rgCountryCodeArray[153].dwCountryCode = 594; rgCountryCodeArray[153].szCountryName = MyLoadString( IDS_French_Guiana );
rgCountryCodeArray[154].dwCountryCode = 595; rgCountryCodeArray[154].szCountryName = MyLoadString( IDS_Paraguay );
rgCountryCodeArray[155].dwCountryCode = 596; rgCountryCodeArray[155].szCountryName = MyLoadString( IDS_Martinique );
rgCountryCodeArray[156].dwCountryCode = 597; rgCountryCodeArray[156].szCountryName = MyLoadString( IDS_Suriname );
rgCountryCodeArray[157].dwCountryCode = 598; rgCountryCodeArray[157].szCountryName = MyLoadString( IDS_Uruguay );
rgCountryCodeArray[158].dwCountryCode = 599; rgCountryCodeArray[158].szCountryName = MyLoadString( IDS_Netherlands_Antilles );
rgCountryCodeArray[159].dwCountryCode = 60; rgCountryCodeArray[159].szCountryName = MyLoadString( IDS_Malaysia );
rgCountryCodeArray[160].dwCountryCode = 61; rgCountryCodeArray[160].szCountryName = MyLoadString( IDS_Australia );
rgCountryCodeArray[161].dwCountryCode = 6101; rgCountryCodeArray[161].szCountryName = MyLoadString( IDS_Cocos_Keeling_Islands );
rgCountryCodeArray[162].dwCountryCode = 62; rgCountryCodeArray[162].szCountryName = MyLoadString( IDS_Indonesia );
rgCountryCodeArray[163].dwCountryCode = 63; rgCountryCodeArray[163].szCountryName = MyLoadString( IDS_Philippines );
rgCountryCodeArray[164].dwCountryCode = 64; rgCountryCodeArray[164].szCountryName = MyLoadString( IDS_New_Zealand );
rgCountryCodeArray[165].dwCountryCode = 65; rgCountryCodeArray[165].szCountryName = MyLoadString( IDS_Singapore );
rgCountryCodeArray[166].dwCountryCode = 66; rgCountryCodeArray[166].szCountryName = MyLoadString( IDS_Thailand );
rgCountryCodeArray[167].dwCountryCode = 670; rgCountryCodeArray[167].szCountryName = MyLoadString( IDS_Saipan_Island );
rgCountryCodeArray[168].dwCountryCode = 6701; rgCountryCodeArray[168].szCountryName = MyLoadString( IDS_Rota_Island );
rgCountryCodeArray[169].dwCountryCode = 6702; rgCountryCodeArray[169].szCountryName = MyLoadString( IDS_Tinian_Island );
rgCountryCodeArray[170].dwCountryCode = 671; rgCountryCodeArray[170].szCountryName = MyLoadString( IDS_Guam );
rgCountryCodeArray[171].dwCountryCode = 672; rgCountryCodeArray[171].szCountryName = MyLoadString( IDS_Christmas_Island );
rgCountryCodeArray[172].dwCountryCode = 6721; rgCountryCodeArray[172].szCountryName = MyLoadString( IDS_Australian_Antarctic_Territory );
rgCountryCodeArray[173].dwCountryCode = 6722; rgCountryCodeArray[173].szCountryName = MyLoadString( IDS_Norfolk_Island );
rgCountryCodeArray[174].dwCountryCode = 673; rgCountryCodeArray[174].szCountryName = MyLoadString( IDS_Brunei );
rgCountryCodeArray[175].dwCountryCode = 674; rgCountryCodeArray[175].szCountryName = MyLoadString( IDS_Nauru );
rgCountryCodeArray[176].dwCountryCode = 675; rgCountryCodeArray[176].szCountryName = MyLoadString( IDS_Papua_New_Guinea );
rgCountryCodeArray[177].dwCountryCode = 676; rgCountryCodeArray[177].szCountryName = MyLoadString( IDS_Tonga );
rgCountryCodeArray[178].dwCountryCode = 677; rgCountryCodeArray[178].szCountryName = MyLoadString( IDS_Solomon_Islands );
rgCountryCodeArray[179].dwCountryCode = 678; rgCountryCodeArray[179].szCountryName = MyLoadString( IDS_Vanuatu );
rgCountryCodeArray[180].dwCountryCode = 679; rgCountryCodeArray[180].szCountryName = MyLoadString( IDS_Fiji );
rgCountryCodeArray[181].dwCountryCode = 680; rgCountryCodeArray[181].szCountryName = MyLoadString( IDS_Palau );
rgCountryCodeArray[182].dwCountryCode = 681; rgCountryCodeArray[182].szCountryName = MyLoadString( IDS_Wallis_and_Futuna_Islands );
rgCountryCodeArray[183].dwCountryCode = 682; rgCountryCodeArray[183].szCountryName = MyLoadString( IDS_Cook_Islands );
rgCountryCodeArray[184].dwCountryCode = 683; rgCountryCodeArray[184].szCountryName = MyLoadString( IDS_Niue );
rgCountryCodeArray[185].dwCountryCode = 684; rgCountryCodeArray[185].szCountryName = MyLoadString( IDS_American_Samoa );
rgCountryCodeArray[186].dwCountryCode = 685; rgCountryCodeArray[186].szCountryName = MyLoadString( IDS_Samoa );
rgCountryCodeArray[187].dwCountryCode = 686; rgCountryCodeArray[187].szCountryName = MyLoadString( IDS_Kiribati );
rgCountryCodeArray[188].dwCountryCode = 687; rgCountryCodeArray[188].szCountryName = MyLoadString( IDS_New_Caledonia );
rgCountryCodeArray[189].dwCountryCode = 688; rgCountryCodeArray[189].szCountryName = MyLoadString( IDS_Tuvalu );
rgCountryCodeArray[190].dwCountryCode = 689; rgCountryCodeArray[190].szCountryName = MyLoadString( IDS_French_Polynesia );
rgCountryCodeArray[191].dwCountryCode = 690; rgCountryCodeArray[191].szCountryName = MyLoadString( IDS_Tokelau );
rgCountryCodeArray[192].dwCountryCode = 691; rgCountryCodeArray[192].szCountryName = MyLoadString( IDS_Micronesia__Fed_States_of );
rgCountryCodeArray[193].dwCountryCode = 692; rgCountryCodeArray[193].szCountryName = MyLoadString( IDS_Marshall_Islands );
rgCountryCodeArray[194].dwCountryCode = 7; rgCountryCodeArray[194].szCountryName = MyLoadString( IDS_Russia );
rgCountryCodeArray[195].dwCountryCode = 705; rgCountryCodeArray[195].szCountryName = MyLoadString( IDS_Kazakhstan );
rgCountryCodeArray[196].dwCountryCode = 706; rgCountryCodeArray[196].szCountryName = MyLoadString( IDS_Kyrgyzstan );
rgCountryCodeArray[197].dwCountryCode = 708; rgCountryCodeArray[197].szCountryName = MyLoadString( IDS_Tajikistan );
rgCountryCodeArray[198].dwCountryCode = 709; rgCountryCodeArray[198].szCountryName = MyLoadString( IDS_Turkmenistan );
rgCountryCodeArray[199].dwCountryCode = 711; rgCountryCodeArray[199].szCountryName = MyLoadString( IDS_Uzbekistan );
rgCountryCodeArray[200].dwCountryCode = 81; rgCountryCodeArray[200].szCountryName = MyLoadString( IDS_Japan );
rgCountryCodeArray[201].dwCountryCode = 82; rgCountryCodeArray[201].szCountryName = MyLoadString( IDS_Korea__Republic_of );
rgCountryCodeArray[202].dwCountryCode = 84; rgCountryCodeArray[202].szCountryName = MyLoadString( IDS_Vietnam );
rgCountryCodeArray[203].dwCountryCode = 850; rgCountryCodeArray[203].szCountryName = MyLoadString( IDS_Korea__North_ );
rgCountryCodeArray[204].dwCountryCode = 852; rgCountryCodeArray[204].szCountryName = MyLoadString( IDS_Hong_Kong );
rgCountryCodeArray[205].dwCountryCode = 853; rgCountryCodeArray[205].szCountryName = MyLoadString( IDS_Macau );
rgCountryCodeArray[206].dwCountryCode = 855; rgCountryCodeArray[206].szCountryName = MyLoadString( IDS_Cambodia );
rgCountryCodeArray[207].dwCountryCode = 856; rgCountryCodeArray[207].szCountryName = MyLoadString( IDS_Laos );
rgCountryCodeArray[208].dwCountryCode = 86; rgCountryCodeArray[208].szCountryName = MyLoadString( IDS_China );
rgCountryCodeArray[209].dwCountryCode = 871; rgCountryCodeArray[209].szCountryName = MyLoadString( IDS_INMARSAT__Atlantic_East_ );
rgCountryCodeArray[210].dwCountryCode = 872; rgCountryCodeArray[210].szCountryName = MyLoadString( IDS_INMARSAT__Pacific_ );
rgCountryCodeArray[211].dwCountryCode = 873; rgCountryCodeArray[211].szCountryName = MyLoadString( IDS_INMARSAT__Indian_ );
rgCountryCodeArray[212].dwCountryCode = 874; rgCountryCodeArray[212].szCountryName = MyLoadString( IDS_INMARSAT__Atlantic_West_ );
rgCountryCodeArray[213].dwCountryCode = 880; rgCountryCodeArray[213].szCountryName = MyLoadString( IDS_Bangladesh );
rgCountryCodeArray[214].dwCountryCode = 886; rgCountryCodeArray[214].szCountryName = MyLoadString( IDS_Taiwan );
rgCountryCodeArray[215].dwCountryCode = 90; rgCountryCodeArray[215].szCountryName = MyLoadString( IDS_Turkey );
rgCountryCodeArray[216].dwCountryCode = 91; rgCountryCodeArray[216].szCountryName = MyLoadString( IDS_India );
rgCountryCodeArray[217].dwCountryCode = 92; rgCountryCodeArray[217].szCountryName = MyLoadString( IDS_Pakistan );
rgCountryCodeArray[218].dwCountryCode = 93; rgCountryCodeArray[218].szCountryName = MyLoadString( IDS_Afghanistan );
rgCountryCodeArray[219].dwCountryCode = 94; rgCountryCodeArray[219].szCountryName = MyLoadString( IDS_Sri_Lanka );
rgCountryCodeArray[220].dwCountryCode = 95; rgCountryCodeArray[220].szCountryName = MyLoadString( IDS_Myanmar );
rgCountryCodeArray[221].dwCountryCode = 960; rgCountryCodeArray[221].szCountryName = MyLoadString( IDS_Maldives );
rgCountryCodeArray[222].dwCountryCode = 961; rgCountryCodeArray[222].szCountryName = MyLoadString( IDS_Lebanon );
rgCountryCodeArray[223].dwCountryCode = 962; rgCountryCodeArray[223].szCountryName = MyLoadString( IDS_Jordan );
rgCountryCodeArray[224].dwCountryCode = 963; rgCountryCodeArray[224].szCountryName = MyLoadString( IDS_Syria );
rgCountryCodeArray[225].dwCountryCode = 964; rgCountryCodeArray[225].szCountryName = MyLoadString( IDS_Iraq );
rgCountryCodeArray[226].dwCountryCode = 965; rgCountryCodeArray[226].szCountryName = MyLoadString( IDS_Kuwait );
rgCountryCodeArray[227].dwCountryCode = 966; rgCountryCodeArray[227].szCountryName = MyLoadString( IDS_Saudi_Arabia );
rgCountryCodeArray[228].dwCountryCode = 967; rgCountryCodeArray[228].szCountryName = MyLoadString( IDS_Yemen );
rgCountryCodeArray[229].dwCountryCode = 968; rgCountryCodeArray[229].szCountryName = MyLoadString( IDS_Oman );
rgCountryCodeArray[230].dwCountryCode = 971; rgCountryCodeArray[230].szCountryName = MyLoadString( IDS_United_Arab_Emirates );
rgCountryCodeArray[231].dwCountryCode = 972; rgCountryCodeArray[231].szCountryName = MyLoadString( IDS_Israel );
rgCountryCodeArray[232].dwCountryCode = 973; rgCountryCodeArray[232].szCountryName = MyLoadString( IDS_Bahrain );
rgCountryCodeArray[233].dwCountryCode = 974; rgCountryCodeArray[233].szCountryName = MyLoadString( IDS_Qatar );
rgCountryCodeArray[234].dwCountryCode = 975; rgCountryCodeArray[234].szCountryName = MyLoadString( IDS_Bhutan );
rgCountryCodeArray[235].dwCountryCode = 976; rgCountryCodeArray[235].szCountryName = MyLoadString( IDS_Mongolia );
rgCountryCodeArray[236].dwCountryCode = 977; rgCountryCodeArray[236].szCountryName = MyLoadString( IDS_Nepal );
rgCountryCodeArray[237].dwCountryCode = 98; rgCountryCodeArray[237].szCountryName = MyLoadString( IDS_Iran );
rgCountryCodeArray[238].dwCountryCode = 994; rgCountryCodeArray[238].szCountryName = MyLoadString( IDS_Azerbaijan );
rgCountryCodeArray[239].dwCountryCode = 995; rgCountryCodeArray[239].szCountryName = MyLoadString( IDS_Georgia );
rgCountryCodeArray[240].dwCountryCode = 800; rgCountryCodeArray[240].szCountryName = MyLoadString( IDS_Intl_Freephone_Service );
rgCountryCodeArray[241].dwCountryCode = 870; rgCountryCodeArray[241].szCountryName = MyLoadString( IDS_INMARSAT );
//
// Add the don't specify setting
//
rgCountryCodeArray[242].dwCountryCode = DONTSPECIFYSETTING; rgCountryCodeArray[242].szCountryName = StrDontSpecifySetting;
}
|