Source code of Windows XP (NT5)
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
/* Copyright (c) 1995, Microsoft Corporation, all rights reserved
** ** pbuser.h ** Remote Access phonebook user preference library ** Public header ** ** 06/20/95 Steve Cobb */
#ifndef _PBUSER_H_
#define _PBUSER_H_
/*----------------------------------------------------------------------------
** Constants **---------------------------------------------------------------------------- */
/* User preference modes
*/ #define UPM_Normal 0
#define UPM_Logon 1
#define UPM_Router 2
/* User preference key and values.
*/ #define REGKEY_HkcuOldRas TEXT("Software\\Microsoft\\Windows NT\\CurrentVersion\\Network\\RemoteAccess")
#define REGKEY_HkcuOldRasParent TEXT("Software\\Microsoft\\Windows NT\\CurrentVersion\\Network")
#define REGKEY_HkcuOldRasRoot TEXT("RemoteAccess")
#define REGKEY_HkuOldRasLogon TEXT(".DEFAULT\\Software\\Microsoft\\RAS Phonebook")
#define REGKEY_HkcuRas TEXT("Software\\Microsoft\\RAS Phonebook")
#define REGKEY_HkuRasLogon TEXT(".DEFAULT\\Software\\Microsoft\\RAS Logon Phonebook")
#define REGKEY_HklmRouter TEXT("Software\\Microsoft\\Router Phonebook")
#define REGKEY_Callback TEXT("Callback")
#define REGKEY_Location TEXT("Location")
#define REGVAL_szNumber TEXT("Number")
#define REGVAL_dwDeviceType TEXT("DeviceType")
#define REGVAL_dwPhonebookMode TEXT("PhonebookMode")
#define REGVAL_szUsePersonalPhonebook TEXT("UsePersonalPhonebook")
#define REGVAL_szPersonalPhonebookPath TEXT("PersonalPhonebookPath")
#define REGVAL_szPersonalPhonebookFile TEXT("PersonalPhonebookFile")
#define REGVAL_szAlternatePhonebookPath TEXT("AlternatePhonebookPath")
#define REGVAL_fOperatorDial TEXT("OperatorDial")
#define REGVAL_fPreviewPhoneNumber TEXT("PreviewPhoneNumber")
#define REGVAL_fUseLocation TEXT("UseLocation")
#define REGVAL_fShowLights TEXT("ShowLights")
#define REGVAL_fShowConnectStatus TEXT("ShowConnectStatus")
#define REGVAL_fNewEntryWizard TEXT("NewEntryWizard")
#define REGVAL_dwRedialAttempts TEXT("RedialAttempts")
#define REGVAL_dwRedialSeconds TEXT("RedialSeconds")
#define REGVAL_dwIdleDisconnectSeconds TEXT("IdleHangUpSeconds")
#define REGVAL_dwCallbackMode TEXT("CallbackMode")
#define REGVAL_mszPhonebooks TEXT("Phonebooks")
#define REGVAL_mszAreaCodes TEXT("AreaCodes")
#define REGVAL_mszPrefixes TEXT("Prefixes")
#define REGVAL_mszSuffixes TEXT("Suffixes")
#define REGVAL_szLastCallbackByCaller TEXT("LastCallbackByCaller")
#define REGVAL_dwPrefix TEXT("Prefix")
#define REGVAL_dwSuffix TEXT("Suffix")
#define REGVAL_dwXWindow TEXT("WindowX")
#define REGVAL_dwYWindow TEXT("WindowY")
#define REGVAL_szDefaultEntry TEXT("DefaultEntry")
#define REGVAL_fCloseOnDial TEXT("CloseOnDial")
#define REGVAL_fAllowLogonPhonebookEdits TEXT("AllowLogonPhonebookEdits")
#define REGVAL_fAllowLogonLocationEdits TEXT("AllowLogonLocationEdits")
#define REGVAL_fUseAreaAndCountry TEXT("UseAreaAndCountry")
#define REGVAL_dwMode TEXT("Mode")
#define REGVAL_dwFlags TEXT("Flags")
#define REGVAL_dwX TEXT("x")
#define REGVAL_dwY TEXT("y")
#define REGVAL_dwCx TEXT("cx")
#define REGVAL_dwCy TEXT("cy")
#define REGVAL_dwCxCol1 TEXT("cxCol1")
#define REGVAL_dwStartPage TEXT("StartPage")
#define REGVAL_dwXDlg TEXT("xDlg")
#define REGVAL_dwYDlg TEXT("yDlg")
#define REGVAL_dwCxDlgCol1 TEXT("cxDlgCol1")
#define REGVAL_dwCxDlgCol2 TEXT("cxDlgCol2")
#define REGVAL_szLastDevice TEXT("LastDevice")
#define REGVAL_mszDeviceList TEXT("DeviceList")
#define REGVAL_fSkipConnectComplete TEXT("SkipConnectComplete")
#define REGVAL_fRedialOnLinkFailure TEXT("RedialOnLinkFailure")
#define REGVAL_fExpandAutoDialQuery TEXT("ExpandAutoDialQuery")
#define REGVAL_fPopupOnTopWhenRedialing TEXT("PopupOnTopWhenRedialing")
#define REGVAL_dwVersion TEXT("Version")
/* Callback modes (see dwCallbackMode below).
*/ #define CBM_No 0
#define CBM_Maybe 1
#define CBM_Yes 2
/* Phonebook modes (see dwPhonebookMode below).
*/ #define PBM_System 0
#define PBM_Personal 1
#define PBM_Alternate 2
#define PBM_Router 3
/*----------------------------------------------------------------------------
** Datatypes **---------------------------------------------------------------------------- */
/* Information about a callback number. See 'PBUSER.pdtllistCallback'. Note
** that 'dwDeviceType' is a PBK PBDEVICETYPE enumeration cast to a DWORD. */ #define CALLBACKINFO struct tagCALLBACKINFO
CALLBACKINFO { TCHAR* pszPortName; TCHAR* pszDeviceName; TCHAR* pszNumber; DWORD dwDeviceType; };
/* Information associated with a TAPI location number.
*/ #define LOCATIONINFO struct tagLOCATIONINFO
LOCATIONINFO { DWORD dwLocationId; DWORD iPrefix; DWORD iSuffix; };
/* User preference information read from the "CURRENT_USER" registry. This
** information applies to all "normal" user phonebooks plus the system ** phonebook. The router phonebook may work differently. */ #define PBUSER struct tagPBUSER
PBUSER { /* Appearance page.
*/ BOOL fOperatorDial; BOOL fPreviewPhoneNumber; BOOL fUseLocation; BOOL fShowLights; BOOL fShowConnectStatus; BOOL fCloseOnDial; BOOL fAllowLogonPhonebookEdits; BOOL fAllowLogonLocationEdits; BOOL fSkipConnectComplete; BOOL fNewEntryWizard;
/* Auto-dial page.
*/ DWORD dwRedialAttempts; DWORD dwRedialSeconds; DWORD dwIdleDisconnectSeconds; BOOL fRedialOnLinkFailure; BOOL fPopupOnTopWhenRedialing; BOOL fExpandAutoDialQuery;
/* Callback page.
** ** This list is of CALLBACKINFO. */ DWORD dwCallbackMode; DTLLIST* pdtllistCallback; TCHAR* pszLastCallbackByCaller;
/* Phone list page.
*/ DWORD dwPhonebookMode; TCHAR* pszPersonalFile; TCHAR* pszAlternatePath; DTLLIST* pdtllistPhonebooks;
/* Area code strings, in MRU order.
*/ DTLLIST* pdtllistAreaCodes; BOOL fUseAreaAndCountry;
/* Prefix/suffix information, i.e. the ordered string lists and the
** settings for a particular TAPI location. */ DTLLIST* pdtllistPrefixes; DTLLIST* pdtllistSuffixes; DTLLIST* pdtllistLocations;
/* Phonebook window position and last entry selected used by RASPHONE.EXE.
*/ DWORD dwXPhonebook; DWORD dwYPhonebook; TCHAR* pszDefaultEntry;
/* Set true if the structure has been initialized.
*/ BOOL fInitialized;
/* Set true if something's changed since the structure was read.
*/ BOOL fDirty; };
/*----------------------------------------------------------------------------
** Prototypes **---------------------------------------------------------------------------- */
DTLNODE* CreateLocationNode( IN DWORD dwLocationId, IN DWORD iPrefix, IN DWORD iSuffix );
DTLNODE* CreateCallbackNode( IN TCHAR* pszPortName, IN TCHAR* pszDeviceName, IN TCHAR* pszNumber, IN DWORD dwDeviceType );
VOID DestroyLocationNode( IN DTLNODE* pNode );
VOID DestroyCallbackNode( IN DTLNODE* pNode );
VOID DestroyUserPreferences( IN PBUSER* pUser );
DTLNODE* DuplicateLocationNode( IN DTLNODE* pNode );
DWORD GetUserPreferences( IN HANDLE hConnection, OUT PBUSER* pUser, IN DWORD dwMode );
DWORD SetUserPreferences( IN HANDLE hConnection, IN PBUSER* pUser, IN DWORD dwMode );
// These two are provided as an optimization.
// They write directly to the registry.
DWORD GetUserManualDialEnabling ( IN OUT PBOOL pbEnabled, IN DWORD dwMode ); DWORD SetUserManualDialEnabling ( IN BOOL bEnable, IN DWORD dwMode );
#endif // _PBUSER_H_
|