windows-nt/Source/XPSP1/NT/termsrv/cdmodem/inc/device.h
2020-09-26 16:20:57 +08:00

108 lines
3 KiB
C

//***************************************************************************
//
// Microsoft NT Remote Access Service
//
// Copyright (C) 1992-93 Microsft Corporation. All rights reserved.
//
// Filename: device.h
//
// Revision History:
//
// Aug 11, 1992 J. Perry Hannah Created
//
//
// Description: This file contains function prototypes and typedefs
// used by the interface between RAS Manager and the
// device DLLs, such as RASMXS.DLL. This header file
// will be used by RASMAN.
//
//****************************************************************************
#ifndef _RASDEVICEDLL_
#define _RASDEVICEDLL_
//* RASMXS API Prototypes **************************************************
//
// Apps should define RASMXS_STATIC_LINK to get the appropriate function
// prototypes for linking statically with the RASMXS DLL.
//
// Apps should define RASMXS_DYNAMIC_LINK to get the appropriate function
// typedefs for linking dynamically with the RASMXS DLL.
//
#ifdef RASMXS_STATIC_LINK
DWORD APIENTRY DeviceEnum(char *pszDeviceType,
WORD *pcEntries,
BYTE *pBuffer,
WORD *pwSize);
DWORD APIENTRY DeviceGetInfo(HANDLE hIOPort,
char *pszDeviceType,
char *pszDeviceName,
BYTE *pInfo,
WORD *pwSize);
DWORD APIENTRY DeviceSetInfo(HANDLE hIOPort,
char *pszDeviceType,
char *pszDeviceName,
DEVICEINFO *pInfo);
DWORD APIENTRY DeviceConnect(HANDLE hIOPort,
char *pszDeviceType,
char *pszDeviceName,
HANDLE hNotifier);
DWORD APIENTRY DeviceListen(HANDLE hIOPort,
char *pszDeviceType,
char *pszDeviceName,
HANDLE hNotifier);
VOID APIENTRY DeviceDone(HANDLE hIOPort);
DWORD APIENTRY DeviceWork(HANDLE hIOPort,
HANDLE hNotifier);
#endif // RASMXS_STATIC_LINK
#ifdef RASMXS_DYNAMIC_LINK
typedef DWORD (APIENTRY * DeviceEnum_t)(char*, WORD*, BYTE*, WORD*);
typedef DWORD (APIENTRY * DeviceGetInfo_t)(HANDLE, char*, char*, BYTE*, WORD*);
typedef DWORD (APIENTRY * DeviceSetInfo_t)(HANDLE, char*, char*,
RASMAN_DEVICEINFO*);
typedef DWORD (APIENTRY * DeviceConnect_t)(HANDLE, char*, char*, HANDLE);
typedef DWORD (APIENTRY * DeviceListen_t)(HANDLE, char*, char*, HANDLE);
typedef DWORD (APIENTRY * DeviceDone_t)(HANDLE);
typedef DWORD (APIENTRY * DeviceWork_t)(HANDLE, HANDLE);
// OPTIONAL
typedef DWORD (APIENTRY * DeviceSetDevConfig_t)(HANDLE, PBYTE, DWORD);
typedef DWORD (APIENTRY * DeviceGetDevConfig_t)(char *, PBYTE, DWORD*);
#endif // RASMXS_DYNAMIC_LINK
#endif // _RASDEVICEDLL_