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.

117 lines
1.9 KiB

  1. /*++
  2. Copyright (c) 1995-2001 Microsoft Corporation
  3. Module Name:
  4. cfgi.h
  5. Abstract:
  6. This module contains the internal structure definitions and APIs used by
  7. the Configuration Manager.
  8. Author:
  9. Jim Cavalaris (jamesca) 03-01-2001
  10. Environment:
  11. User-mode only.
  12. Revision History:
  13. 01-March-2001 jamesca
  14. Creation and initial implementation.
  15. --*/
  16. #ifndef _CFGI_H_
  17. #define _CFGI_H_
  18. //
  19. // Client machine handle structure and signature
  20. //
  21. typedef struct PnP_Machine_s {
  22. PVOID hStringTable;
  23. PVOID hBindingHandle;
  24. WORD wVersion;
  25. ULONG ulSignature;
  26. WCHAR szMachineName[MAX_PATH + 3];
  27. } PNP_MACHINE, *PPNP_MACHINE;
  28. #define MACHINE_HANDLE_SIGNATURE 'HMPP'
  29. //
  30. // Client context handle signature
  31. //
  32. #define CLIENT_CONTEXT_SIGNATURE 'HCPP'
  33. //
  34. // Client string table priming string
  35. //
  36. #define PRIMING_STRING TEXT("PLT")
  37. //
  38. // Client side private utility routines
  39. //
  40. BOOL
  41. INVALID_DEVINST(
  42. IN PWSTR pDeviceID
  43. );
  44. VOID
  45. CopyFixedUpDeviceId(
  46. OUT LPTSTR DestinationString,
  47. IN LPCTSTR SourceString,
  48. IN DWORD SourceStringLen
  49. );
  50. CONFIGRET
  51. PnPUnicodeToMultiByte(
  52. IN PWSTR UnicodeString,
  53. IN ULONG UnicodeStringLen,
  54. OUT PSTR AnsiString OPTIONAL,
  55. IN OUT PULONG AnsiStringLen
  56. );
  57. CONFIGRET
  58. PnPMultiByteToUnicode(
  59. IN PSTR AnsiString,
  60. IN ULONG AnsiStringLen,
  61. OUT PWSTR UnicodeString OPTIONAL,
  62. IN OUT PULONG UnicodeStringLen
  63. );
  64. BOOL
  65. PnPGetGlobalHandles(
  66. IN HMACHINE hMachine,
  67. PVOID *phStringTable OPTIONAL,
  68. PVOID *phBindingHandle OPTIONAL
  69. );
  70. BOOL
  71. PnPRetrieveMachineName(
  72. IN HMACHINE hMachine,
  73. OUT LPWSTR pszMachineName
  74. );
  75. BOOL
  76. PnPGetVersion(
  77. IN HMACHINE hMachine,
  78. IN WORD* pwVersion
  79. );
  80. #endif // _CFGI_H_