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.

95 lines
2.4 KiB

  1. #define DESKCPLEXT_DISPLAY_DEVICE TEXT("Display Device") // "\DisplayX"
  2. #define DESKCPLEXT_DISPLAY_NAME TEXT("Display Name") // " ATI Mach64 Turbo 3 "
  3. #define DESKCPLEXT_MONITOR_DEVICE TEXT("Monitor Device") // " \DisplayX\MonitorX "
  4. #define DESKCPLEXT_MONITOR_NAME TEXT("Monitor Name") // " NEC Multi-sync II "
  5. #define DESKCPLEXT_PRUNING_MODE TEXT("Pruning Mode") // 1 = on (default value), 0 = off
  6. #define DESKCPLEXT_DISPLAY_DEVICE_KEY TEXT("Display Key") // "\REGISTRY\MACHINE\SYSTEM\ControlSet00X\Services\<driver>\DeviceY"
  7. #define DESKCPLEXT_DISPLAY_ID TEXT("Display ID") // "ROOT\*PNP0F03\1-0-21-0-31-0"
  8. #define DESKCPLEXT_DISPLAY_STATE_FLAGS TEXT("Display State Flags")
  9. #define DESKCPLEXT_MONITOR_ID TEXT("Monitor ID") // "ROOT\*PNP0F04\1-0-21-0-31-0"
  10. #define DESKCPLEXT_INTERFACE TEXT("Desk.cpl extension interface")
  11. typedef
  12. LPDEVMODEW
  13. (*LPDESKCPLEXT_ENUM_ALL_MODES) (
  14. LPVOID pContext,
  15. DWORD iMode
  16. );
  17. typedef
  18. LPDEVMODEW
  19. (*LPDESKCPLEXT_GET_SELECTED_MODE) (
  20. LPVOID pContext
  21. );
  22. typedef
  23. BOOL
  24. (*LPDESKCPLEXT_SET_SELECTED_MODE) (
  25. LPVOID pContext,
  26. LPDEVMODEW lpdm
  27. );
  28. typedef
  29. VOID
  30. (*LPDESKCPLEXT_GET_PRUNING_MODE) (
  31. LPVOID pContext,
  32. BOOL* pbCanBePruned,
  33. BOOL* pbIsReadOnly,
  34. BOOL* pbIsPruningOn
  35. );
  36. typedef
  37. VOID
  38. (*LPDESKCPLEXT_SET_PRUNING_MODE) (
  39. LPVOID pContext,
  40. BOOL bIsPruningOn
  41. );
  42. typedef struct _DISPLAY_REGISTRY_HARDWARE_INFO {
  43. WCHAR MemSize[128];
  44. WCHAR ChipType[128];
  45. WCHAR DACType[128];
  46. WCHAR AdapString[128];
  47. WCHAR BiosString[128];
  48. } DISPLAY_REGISTRY_HARDWARE_INFO, *PDISPLAY_REGISTRY_HARDWARE_INFO;
  49. typedef struct _DESK_EXTENSION_INTERFACE {
  50. DWORD cbSize;
  51. LPVOID pContext;
  52. LPDESKCPLEXT_ENUM_ALL_MODES lpfnEnumAllModes;
  53. LPDESKCPLEXT_SET_SELECTED_MODE lpfnSetSelectedMode;
  54. LPDESKCPLEXT_GET_SELECTED_MODE lpfnGetSelectedMode;
  55. LPDESKCPLEXT_SET_PRUNING_MODE lpfnSetPruningMode;
  56. LPDESKCPLEXT_GET_PRUNING_MODE lpfnGetPruningMode;
  57. DISPLAY_REGISTRY_HARDWARE_INFO Info;
  58. } DESK_EXTENSION_INTERFACE, *PDESK_EXTENSION_INTERFACE;
  59. #define NORMAL_TIMEOUT 7000
  60. #define SLOW_TIMEOUT 12000
  61. typedef
  62. int
  63. (*LPDISPLAY_SAVE_SETTINGS) (
  64. LPVOID pContext,
  65. HWND hwnd
  66. );
  67. typedef
  68. DWORD
  69. (*LPDISPLAY_TEST_SETTINGS) (
  70. LPDEVMODEW lpDevMode,
  71. LPWSTR pwszDevice,
  72. DWORD dwTimeout
  73. );