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.
219 lines
8.5 KiB
219 lines
8.5 KiB
//*********************************************************************
|
|
//* Microsoft Windows **
|
|
//* Copyright(c) Microsoft Corp., 1995 **
|
|
//*********************************************************************
|
|
|
|
//
|
|
// INETAPI.H - APIs for system configuration for Internet and phone number
|
|
// setting
|
|
//
|
|
|
|
// HISTORY:
|
|
//
|
|
// 3/3/95 jeremys Created.
|
|
// 96/03/21 markdu Use private string sizes (MSN_) for PHONENUM since the
|
|
// RAS ones (RAS_) change depending on platform, but MSN does not
|
|
// expect this so the structure sizes won't match on existing code.
|
|
//
|
|
|
|
#ifndef _INETAPI_H_
|
|
#define _INETAPI_H_
|
|
|
|
#ifndef _RNAP_H_
|
|
// (copied from RNA header file)
|
|
|
|
#define MSN_MaxAreaCode 10
|
|
#define MSN_MaxLocal 36
|
|
#define MSN_MaxExtension 5
|
|
|
|
typedef struct tagPHONENUMA {
|
|
DWORD dwCountryID;
|
|
DWORD dwCountryCode;
|
|
CHAR szAreaCode[MSN_MaxAreaCode+1];
|
|
CHAR szLocal[MSN_MaxLocal+1];
|
|
CHAR szExtension[MSN_MaxExtension+1];
|
|
} PHONENUMA, FAR * LPPHONENUMA;
|
|
|
|
typedef struct tagPHONENUMW {
|
|
DWORD dwCountryID;
|
|
DWORD dwCountryCode;
|
|
WCHAR szAreaCode[MSN_MaxAreaCode+1];
|
|
WCHAR szLocal[MSN_MaxLocal+1];
|
|
WCHAR szExtension[MSN_MaxExtension+1];
|
|
} PHONENUMW, FAR * LPPHONENUMW;
|
|
|
|
#ifdef UNICODE
|
|
#define PHONENUM PHONENUMW
|
|
#define LPPHONENUM LPPHONENUMW
|
|
#else
|
|
#define PHONENUM PHONENUMA
|
|
#define LPPHONENUM LPPHONENUMA
|
|
#endif
|
|
|
|
#endif // ifndef _RNAP_H_
|
|
|
|
// input flags for APIs
|
|
#define ICIF_NOCONFIGURE 0x0001 // for SetInternetPhoneNumber, see comments below
|
|
#define ICIF_DONTSETASINTERNETENTRY 0x0002 // if set, phone number will be updated
|
|
// but this connectoid will not be set as the internet connectoid
|
|
#define ICIF_NODNSCHECK 0x0004 // if set, won't check and warn if static DNS is set
|
|
|
|
// output flags for APIs
|
|
#define ICOF_NEEDREBOOT 0x0001 // indicates that caller must restart system
|
|
|
|
|
|
// structures used to contain API parameters
|
|
|
|
typedef struct tagINTERNET_CONFIGA
|
|
{
|
|
DWORD cbSize; // size of this structure in bytes
|
|
HWND hwndParent; // parent window handle
|
|
|
|
LPCSTR pszModemName; // name of modem to use
|
|
LPCSTR pszUserName; // user name for RNA connectoid (ignored if NULL)
|
|
LPCSTR pszPassword; // password for RNA connectoid (ignored if NULL)
|
|
|
|
PHONENUMA PhoneNum; // phone number to use
|
|
LPCSTR pszEntryName; // title to use for RNA connectoid (default name
|
|
// used if NULL)
|
|
|
|
PHONENUMA PhoneNum2; // backup phone number to use
|
|
LPCSTR pszEntryName2; // title to use for RNA connectoid (default name
|
|
// used if NULL)
|
|
|
|
|
|
LPCSTR pszDNSServer; // points to string w/IP address (e.g. "108.9.107.4");
|
|
// (ignored if NULL)
|
|
LPCSTR pszDNSServer2; // points to string w/IP address(e.g. "108.9.107.4");
|
|
// (ignored if NULL)
|
|
|
|
LPCSTR pszAutodialDllName; // optional: name of autodial dll to use (ignored if NULL)
|
|
LPCSTR pszAutodialFcnName; // optional: name of function in autodiall dll to use (ignored if NULL)
|
|
|
|
DWORD dwInputFlags; // at entry, some combination of ICIF_ flags
|
|
DWORD dwOutputFlags; // at return, set to some combination of ICOF_ flags
|
|
|
|
} INTERNET_CONFIGA, FAR * LPINTERNET_CONFIGA;
|
|
|
|
typedef struct tagINTERNET_CONFIGW
|
|
{
|
|
DWORD cbSize; // size of this structure in bytes
|
|
HWND hwndParent; // parent window handle
|
|
|
|
LPCWSTR pszModemName; // name of modem to use
|
|
LPCWSTR pszUserName; // user name for RNA connectoid (ignored if NULL)
|
|
LPCWSTR pszPassword; // password for RNA connectoid (ignored if NULL)
|
|
|
|
PHONENUMW PhoneNum; // phone number to use
|
|
LPCWSTR pszEntryName; // title to use for RNA connectoid (default name
|
|
// used if NULL)
|
|
|
|
PHONENUMW PhoneNum2; // backup phone number to use
|
|
LPCWSTR pszEntryName2; // title to use for RNA connectoid (default name
|
|
// used if NULL)
|
|
|
|
|
|
LPCWSTR pszDNSServer; // points to string w/IP address (e.g. "108.9.107.4");
|
|
// (ignored if NULL)
|
|
LPCWSTR pszDNSServer2; // points to string w/IP address(e.g. "108.9.107.4");
|
|
// (ignored if NULL)
|
|
|
|
LPCWSTR pszAutodialDllName; // optional: name of autodial dll to use (ignored if NULL)
|
|
LPCWSTR pszAutodialFcnName; // optional: name of function in autodiall dll to use (ignored if NULL)
|
|
|
|
DWORD dwInputFlags; // at entry, some combination of ICIF_ flags
|
|
DWORD dwOutputFlags; // at return, set to some combination of ICOF_ flags
|
|
|
|
} INTERNET_CONFIGW, FAR * LPINTERNET_CONFIGW;
|
|
|
|
#ifdef UNICODE
|
|
typedef INTERNET_CONFIGW INTERNET_CONFIG;
|
|
typedef LPINTERNET_CONFIGW LPINTERNET_CONFIG;
|
|
#else
|
|
typedef INTERNET_CONFIGA INTERNET_CONFIG;
|
|
typedef LPINTERNET_CONFIGA LPINTERNET_CONFIG;
|
|
#endif
|
|
|
|
// function prototypes
|
|
|
|
|
|
/*******************************************************************
|
|
|
|
NAME: ConfigureSystemForInternet
|
|
|
|
SYNOPSIS: Performs all necessary configuration to set system up
|
|
to use Internet.
|
|
|
|
ENTRY: lpInternetConfig - pointer to structure with configuration
|
|
information.
|
|
|
|
EXIT: TRUE if successful, or FALSE if fails. Displays its
|
|
own error message upon failure.
|
|
|
|
If the output flag ICOF_NEEDREBOOT is set, the caller
|
|
must restart the system before continuing.
|
|
|
|
NOTES: Will install TCP/IP, RNA, PPPMAC as necessary; will
|
|
create or modify an Internet RNA connectoid.
|
|
|
|
This API displays error messages itself rather than
|
|
passing back an error code because there is a wide range of
|
|
possible error codes from different families, it is difficult
|
|
for the caller to obtain text for all of them.
|
|
|
|
********************************************************************/
|
|
extern "C" BOOL WINAPI ConfigureSystemForInternetA(LPINTERNET_CONFIGA lpInternetConfig);
|
|
extern "C" BOOL WINAPI ConfigureSystemForInternetW(LPINTERNET_CONFIGW lpInternetConfig);
|
|
|
|
#ifdef UNICODE
|
|
#define ConfigureSystemForInternet ConfigureSystemForInternetW
|
|
#else
|
|
#define ConfigureSystemForInternet ConfigureSystemForInternetA
|
|
#endif
|
|
|
|
|
|
/*******************************************************************
|
|
|
|
NAME: SetInternetPhoneNumber
|
|
|
|
SYNOPSIS: Sets the phone number used to auto-dial to the Internet.
|
|
|
|
If the system is not fully configured when this API is called,
|
|
this API will do the configuration after checking with the user.
|
|
(This step is included for extra robustness, in case the user has
|
|
removed something since the system was configured.)
|
|
|
|
ENTRY: lpPhonenumConfig - pointer to structure with configuration
|
|
information.
|
|
|
|
If the input flag ICIF_NOCONFIGURE is set, then if the system
|
|
is not already configured properly, this API will display an
|
|
error message and return FALSE. (Otherwise this API will
|
|
ask the user if it's OK to configure the system, and do it.)
|
|
|
|
EXIT: TRUE if successful, or FALSE if fails. Displays its
|
|
own error message upon failure.
|
|
|
|
If the output flag ICOF_NEEDREBOOT is set, the caller
|
|
must restart the system before continuing. (
|
|
|
|
NOTES: Will create a new connectoid if a connectoid for the internet
|
|
does not exist yet, otherwise modifies existing internet
|
|
connectoid.
|
|
|
|
This API displays error messages itself rather than
|
|
passing back an error code because there is a wide range of
|
|
possible error codes from different families, it is difficult
|
|
for the caller to obtain text for all of them.
|
|
|
|
********************************************************************/
|
|
extern "C" BOOL WINAPI SetInternetPhoneNumberA(LPINTERNET_CONFIGA lpInternetConfig);
|
|
extern "C" BOOL WINAPI SetInternetPhoneNumberW(LPINTERNET_CONFIGW lpInternetConfig);
|
|
|
|
#ifdef UNICODE
|
|
#define SetInternetPhoneNumber SetInternetPhoneNumberW
|
|
#else
|
|
#define SetInternetPhoneNumber SetInternetPhoneNumberA
|
|
#endif
|
|
|
|
#endif // _INETAPI_H_
|