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.

70 lines
1.7 KiB

  1. #include "winfax.h"
  2. //
  3. // command codes
  4. //
  5. #define ICMD_CONNECT 0x80000001
  6. #define ICMD_DISCONNECT 0x80000002
  7. #define ICMD_ENUM_PORTS 0x80000003
  8. #define ICMD_OPEN_PORT 0x80000004
  9. #define ICMD_GET_PORT 0x80000006
  10. #define ICMD_SET_PORT 0x80000007
  11. #define ICMD_CLOSE 0x80000008
  12. #define ICMD_GET_ROUTINGINFO 0x80000009
  13. #define ICMD_GET_DEVICE_STATUS 0x8000000a
  14. #define ICMD_ENUM_ROUTING_METHODS 0x8000000b
  15. #define ICMD_ENABLE_ROUTING_METHOD 0x8000000c
  16. #define ICMD_GET_VERSION 0x8000000d
  17. //
  18. // packets
  19. //
  20. typedef struct _IFAX_CONNECT {
  21. DWORD Command;
  22. WCHAR ServerName[64];
  23. } IFAX_CONNECT, *PIFAX_CONNECT;
  24. typedef struct _IFAX_GENERAL {
  25. DWORD Command;
  26. HANDLE FaxHandle;
  27. } IFAX_GENERAL, *PIFAX_GENERAL;
  28. typedef struct _IFAX_OPEN_PORT {
  29. DWORD Command;
  30. HANDLE FaxHandle;
  31. DWORD DeviceId;
  32. DWORD Flags;
  33. } IFAX_OPEN_PORT, *PIFAX_OPEN_PORT;
  34. typedef struct _IFAX_SET_PORT {
  35. DWORD Command;
  36. HANDLE FaxPortHandle;
  37. FAX_PORT_INFOW PortInfo;
  38. } IFAX_SET_PORT, *PIFAX_SET_PORT;
  39. typedef struct _IFAX_GET_ROUTINGINFO {
  40. DWORD Command;
  41. HANDLE FaxPortHandle;
  42. WCHAR RoutingGuid[MAX_GUID_STRING_LEN];
  43. } IFAX_GET_ROUTINGINFO, *PIFAX_GET_ROUTINGINFO;
  44. typedef struct _IFAX_ENABLE_ROUTING_METHOD {
  45. DWORD Command;
  46. HANDLE FaxPortHandle;
  47. WCHAR RoutingGuid[MAX_GUID_STRING_LEN];
  48. BOOL Enabled;
  49. } IFAX_ENABLE_ROUTING_METHOD, *PIFAX_ENABLE_ROUTING_METHOD;
  50. typedef struct _IFAX_RESPONSE_HEADER {
  51. DWORD Size;
  52. DWORD ErrorCode;
  53. } IFAX_RESPONSE_HEADER, *PIFAX_RESPONSE_HEADER;
  54. typedef BOOL (WINAPI *PUNLOADINIT)(VOID);
  55. typedef BOOL (WINAPI *PUNLOADER)(HMODULE);