Leaked source code of windows server 2003
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.

97 lines
3.1 KiB

  1. /*****************************************************************/
  2. /** Microsoft Windows **/
  3. /** Copyright (C) Microsoft Corp., 1995 **/
  4. /*****************************************************************/
  5. /*
  6. * mscnfapi.h
  7. *
  8. * This header file contains definitions for the Windows Conferencing API.
  9. */
  10. #ifndef _MSCNFAPI_
  11. #define _MSCNFAPI_
  12. #ifdef __cplusplus
  13. extern "C" {
  14. #endif
  15. /*
  16. * Registry key and value names.
  17. *
  18. * Under HKEY_LOCAL_MACHINE\<REGSTR_PATH_CONFERENCING>, the value
  19. * <REGSTR_VAL_APIPROVIDER> is a string value naming the DLL which
  20. * provides the Windows Conferencing API. If this value is present,
  21. * the conferencing software is installed, and the application should
  22. * use LoadLibrary to load the specified DLL. If the key or value is
  23. * not present, conferencing software is not installed and the
  24. * application should hide or disable any conferencing-related features.
  25. */
  26. #define REGSTR_PATH_CONFERENCING "Software\\Microsoft\\Conferencing"
  27. #define REGSTR_VAL_APIPROVIDER "API Provider"
  28. /*
  29. * Error code definitions.
  30. */
  31. typedef unsigned int CONFERR;
  32. #define CONF_SUCCESS ERROR_SUCCESS
  33. #define CONF_MOREDATA ERROR_MORE_DATA
  34. #define CONF_INVALIDPARAM ERROR_INVALID_PARAMETER
  35. #define CONF_OOM ERROR_NOT_ENOUGH_MEMORY
  36. #define CONF_USERCANCELED ERROR_CANCELLED
  37. #define CONF_NOTSUPPORTED ERROR_NOT_SUPPORTED
  38. #define CONF_PERMISSIONDENIED ERROR_ACCESS_DENIED
  39. #define CONF_CUSTOM_ERROR_BASE 3000
  40. #define CONF_APPCANCELLED (CONF_CUSTOM_ERROR_BASE + 0)
  41. #define CONF_ALREADYSHARED (CONF_CUSTOM_ERROR_BASE + 1)
  42. #define CONF_ALREADYUNSHARED (CONF_CUSTOM_ERROR_BASE + 2)
  43. /*
  44. * All conference management and application sharing APIs should be loaded
  45. * from the API provider DLL via GetProcAddress, by name. The following
  46. * type definitions are provided to declare function pointers that will be
  47. * returned by GetProcAddress.
  48. */
  49. /*
  50. * Conference Management APIs
  51. */
  52. typedef HANDLE HCONFERENCE;
  53. typedef CONFERR (WINAPI *pfnConferenceStart)(HWND hwndParent, HCONFERENCE *phConference, LPVOID pCallAddress);
  54. typedef CONFERR (WINAPI *pfnConferenceEnumerate)(HCONFERENCE *pHandleArray, UINT *pcHandles);
  55. typedef CONFERR (WINAPI *pfnConferenceGet)(HWND hwndParent, HCONFERENCE *pHandle);
  56. typedef CONFERR (WINAPI *pfnConferenceGetGCCID)(HCONFERENCE hConference, WORD *pID);
  57. typedef CONFERR (WINAPI *pfnConferenceGetName)(HCONFERENCE hConference, LPSTR pName, UINT *pcbName);
  58. typedef CONFERR (WINAPI *pfnConferenceStop)(HWND hwndParent, HCONFERENCE hConference);
  59. #define WM_CONFERENCESTATUS 0x0060
  60. /*
  61. * Application Sharing APIs
  62. */
  63. typedef BOOL (WINAPI *pfnIsWindowShared)(HWND hWnd, LPVOID pReserved);
  64. typedef CONFERR (WINAPI *pfnShareWindow)(HWND hWnd, BOOL fShare, LPVOID pReserved);
  65. #define WM_SHARINGSTATUS 0x0061
  66. #define CONFN_SHAREQUERY 0
  67. #define CONFN_SHARED 1
  68. #define CONFN_SHARESTOPPED 2
  69. #define CONFN_SHARESTOPQUERY 3
  70. #define CONFN_CONFERENCESTART 4
  71. #define CONFN_CONFERENCESTOPQUERY 5
  72. #define CONFN_CONFERENCESTOPPED 6
  73. #define CONFN_CONFERENCESTOPABORTED 7
  74. #ifdef __cplusplus
  75. }; /* extern "C" */
  76. #endif
  77. #endif /* _MSCNFAPI_ */