273 lines
4.2 KiB
C
273 lines
4.2 KiB
C
|
/*++
|
||
|
|
||
|
Copyright (c) 1997 Microsoft Corporation
|
||
|
|
||
|
Module Name:
|
||
|
|
||
|
stiapi.h
|
||
|
|
||
|
Abstract:
|
||
|
|
||
|
Prototypes for RPC based interface between client and server
|
||
|
sides of STI
|
||
|
|
||
|
Author:
|
||
|
|
||
|
Vlad Sadovsky (vlads) 26-Jan-1997
|
||
|
|
||
|
Revision History:
|
||
|
|
||
|
26-Jan-1997 VladS created
|
||
|
|
||
|
--*/
|
||
|
|
||
|
#ifndef _STIAPI_H_
|
||
|
#define _STIAPI_h_
|
||
|
|
||
|
# ifdef __cplusplus
|
||
|
extern "C" {
|
||
|
# endif // __cplusplus
|
||
|
|
||
|
#ifndef STI_DEVICE_HANDLE
|
||
|
typedef HANDLE STI_DEVICE_HANDLE;
|
||
|
#endif
|
||
|
|
||
|
//
|
||
|
// Custom STI monitor messages. Used by monitor internally or
|
||
|
// by control panel in cases when we don't want to use RPC APIs
|
||
|
//
|
||
|
|
||
|
#define STIMON_WINDOW_CLASS TEXT("STIExe_Window_Class")
|
||
|
|
||
|
#define STISVC_WINDOW_CLASS TEXT("STISvcHiddenWindow")
|
||
|
|
||
|
#define STIMON_MSG_REFRESH WM_USER+201
|
||
|
#define STIMON_MSG_ADD_DEVICE WM_USER+202
|
||
|
#define STIMON_MSG_REMOVE_DEVICE WM_USER+203
|
||
|
#define STIMON_MSG_SET_PARAMETERS WM_USER+204
|
||
|
#define STIMON_MSG_LOG_MESSAGE WM_USER+205
|
||
|
#define STIMON_MSG_VISUALIZE WM_USER+206
|
||
|
#define STIMON_MSG_ENABLE_NOTIFICATIONS WM_USER+207
|
||
|
|
||
|
|
||
|
//
|
||
|
// Subcommand values for main message
|
||
|
// Passed via wParam ( should fit WORD)
|
||
|
//
|
||
|
#define STIMON_MSG_SET_TIMEOUT 1
|
||
|
|
||
|
#define STIMON_MSG_REFRESH_REREAD 2
|
||
|
#define STIMON_MSG_REFRESH_SUSPEND 3
|
||
|
#define STIMON_MSG_REFRESH_RESUME 4
|
||
|
#define STIMON_MSG_REFRESH_SET_FLAG 5
|
||
|
#define STIMON_MSG_REFRESH_CLEAR_FLAG 6
|
||
|
#define STIMON_MSG_REFRESH_PURGE 7
|
||
|
#define STIMON_MSG_REFRESH_DEV_INFO 8
|
||
|
|
||
|
|
||
|
#define STIMON_MSG_NOTIF_ENABLE 1
|
||
|
#define STIMON_MSG_NOTIF_DISABLE 2
|
||
|
#define STIMON_MSG_NOTIF_QUERY 3
|
||
|
#define STIMON_MSG_NOTIF_SET_INACTIVE 5
|
||
|
|
||
|
|
||
|
|
||
|
//
|
||
|
// Bit flags for refresh message
|
||
|
// Passed via lParam ( should fit WORD)
|
||
|
//
|
||
|
#define STIMON_MSG_REFRESH_NEW 0x0001
|
||
|
#define STIMON_MSG_REFRESH_EXISTING 0x0002
|
||
|
#define STIMON_MSG_PURGE_REMOVED 0x0004
|
||
|
#define STIMON_MSG_BOOT 0x0008
|
||
|
|
||
|
|
||
|
//
|
||
|
|
||
|
DWORD
|
||
|
RpcStiApiGetVersion(
|
||
|
LPCWSTR pszServer,
|
||
|
DWORD dwReserved,
|
||
|
DWORD *pdwVersion
|
||
|
);
|
||
|
|
||
|
DWORD
|
||
|
WINAPI
|
||
|
RpcStiApiOpenDevice(
|
||
|
IN LPCWSTR pszServer,
|
||
|
IN LPCWSTR pdeviceName,
|
||
|
IN DWORD dwMode,
|
||
|
IN DWORD dwAccessRequired,
|
||
|
IN DWORD dwProcessId,
|
||
|
OUT STI_DEVICE_HANDLE *pHandle
|
||
|
);
|
||
|
|
||
|
DWORD
|
||
|
WINAPI
|
||
|
RpcStiApiCloseDevice(
|
||
|
IN LPCWSTR pszServer,
|
||
|
IN STI_DEVICE_HANDLE hDevice
|
||
|
);
|
||
|
|
||
|
DWORD
|
||
|
WINAPI
|
||
|
RpcStiApiSubscribe(
|
||
|
IN STI_DEVICE_HANDLE Handle,
|
||
|
IN LPSTISUBSCRIBE lpSubscribe
|
||
|
);
|
||
|
|
||
|
DWORD
|
||
|
WINAPI
|
||
|
RpcStiApiGetLastNotificationData(
|
||
|
IN STI_DEVICE_HANDLE Handle,
|
||
|
OUT LPSTINOTIFY lpNotify
|
||
|
);
|
||
|
|
||
|
DWORD
|
||
|
WINAPI
|
||
|
RpcStiApiUnSubscribe(
|
||
|
IN STI_DEVICE_HANDLE Handle
|
||
|
);
|
||
|
|
||
|
DWORD
|
||
|
WINAPI
|
||
|
RpcStiApiEnableHwNotifications(
|
||
|
IN LPCWSTR pszServer,
|
||
|
IN LPCWSTR pdeviceName,
|
||
|
IN BOOL bNewState
|
||
|
) ;
|
||
|
|
||
|
DWORD
|
||
|
WINAPI
|
||
|
RpcStiApiGetHwNotificationState(
|
||
|
IN LPCWSTR pszServer,
|
||
|
IN LPCWSTR pdeviceName,
|
||
|
OUT LPDWORD pState
|
||
|
);
|
||
|
|
||
|
DWORD
|
||
|
WINAPI
|
||
|
RpcStiApiLaunchApplication(
|
||
|
IN LPCWSTR pszServer,
|
||
|
IN LPCWSTR pdeviceName,
|
||
|
IN LPCWSTR pAppName,
|
||
|
IN LPSTINOTIFY pStiNotify
|
||
|
);
|
||
|
|
||
|
DWORD
|
||
|
WINAPI
|
||
|
RpcStiApiLockDevice(
|
||
|
IN LPCWSTR pdeviceName,
|
||
|
IN DWORD dwWait,
|
||
|
IN BOOL bInServerProcess
|
||
|
);
|
||
|
|
||
|
DWORD
|
||
|
WINAPI
|
||
|
RpcStiApiUnlockDevice(
|
||
|
IN LPCWSTR pdeviceName,
|
||
|
IN BOOL bInServerProcess
|
||
|
);
|
||
|
|
||
|
///////////////////////////////////////////////////////////////
|
||
|
|
||
|
|
||
|
DWORD
|
||
|
RpcStiApiRegisterDeviceNotification(
|
||
|
|
||
|
);
|
||
|
|
||
|
DWORD
|
||
|
RpcStiApiUnregisterDeviceNotification(
|
||
|
|
||
|
);
|
||
|
|
||
|
DWORD
|
||
|
RpcStiApiGetDeviceNotification(
|
||
|
|
||
|
);
|
||
|
|
||
|
DWORD
|
||
|
RpcStiApiEnableDeviceNotifications(
|
||
|
|
||
|
BOOL fEnable
|
||
|
);
|
||
|
|
||
|
|
||
|
DWORD
|
||
|
RpcStiApiEnumerateDevices(
|
||
|
|
||
|
);
|
||
|
|
||
|
DWORD
|
||
|
RpcStiApiReadDeviceData(
|
||
|
|
||
|
);
|
||
|
|
||
|
DWORD
|
||
|
RpcStiApiWriteDeviceData(
|
||
|
|
||
|
);
|
||
|
|
||
|
DWORD
|
||
|
RpcStiApiReadDeviceCommand(
|
||
|
|
||
|
);
|
||
|
|
||
|
DWORD
|
||
|
RpcStiApiWriteDeviceCommand(
|
||
|
|
||
|
);
|
||
|
|
||
|
|
||
|
DWORD
|
||
|
RpcStiApiReadDeviceValue(
|
||
|
|
||
|
);
|
||
|
|
||
|
DWORD
|
||
|
RpcStiApiWriteDeviceValue(
|
||
|
|
||
|
);
|
||
|
|
||
|
DWORD
|
||
|
RpcStiApiDeviceEscape(
|
||
|
|
||
|
);
|
||
|
|
||
|
DWORD
|
||
|
RpcStiApiGetDeviceStatus(
|
||
|
|
||
|
);
|
||
|
|
||
|
DWORD
|
||
|
RpcStiApiGetDeviceLastError(
|
||
|
|
||
|
);
|
||
|
|
||
|
DWORD
|
||
|
RpcStiApiResetDevice(
|
||
|
|
||
|
);
|
||
|
|
||
|
VOID
|
||
|
WINAPI
|
||
|
MigrateRegisteredSTIAppsForWIAEvents(
|
||
|
HWND hWnd,
|
||
|
HINSTANCE hInst,
|
||
|
PTSTR pszCommandLine,
|
||
|
INT iParam
|
||
|
);
|
||
|
|
||
|
|
||
|
# ifdef __cplusplus
|
||
|
};
|
||
|
# endif // __cplusplus
|
||
|
|
||
|
|
||
|
#endif // _STIAPI_H_
|
||
|
|
||
|
|
||
|
|
||
|
|