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.

66 lines
2.0 KiB

  1. //
  2. // Copyright 1997 - Microsoft
  3. //
  4. // SERVER.H - Handles the "IntelliMirror" IDD_PROP_INTELLIMIRROR_CLIENT tab
  5. //
  6. #ifndef _SERVER_H_
  7. #define _SERVER_H_
  8. // Definitions
  9. LPVOID
  10. CServerTab_CreateInstance( void );
  11. // CServerTab
  12. class
  13. CServerTab:
  14. public ITab
  15. {
  16. private:
  17. // Enums
  18. enum {
  19. MODE_SHELL = 0,
  20. MODE_ADMIN
  21. };
  22. HWND _hDlg;
  23. BOOL _fChanged:1; // Are we dirty?
  24. UINT _uMode; // Admin or Shell mode
  25. LPUNKNOWN _punkService; // Pointer to service object
  26. IDataObject * _pido; // IDataObject to be pass to "Clients" dialog and PostADsPropSheet
  27. LPWSTR _pszSCPDN; // SCP's DN
  28. LPWSTR _pszGroupDN; // The group's DN. If NULL, not in a group.
  29. LPUNKNOWN _punkComputer; // Pointer to computer object
  30. HWND _hNotify; // ADS notify window handle
  31. private: // Methods
  32. CServerTab();
  33. ~CServerTab();
  34. STDMETHOD(Init)();
  35. // Property Sheet Functions
  36. BOOL _InitDialog( HWND hDlg, LPARAM lParam );
  37. BOOL _OnCommand( WPARAM wParam, LPARAM lParam );
  38. HRESULT _ApplyChanges( );
  39. INT _OnNotify( WPARAM wParam, LPARAM lParam );
  40. static INT_PTR CALLBACK
  41. PropSheetDlgProc( HWND hDlg, UINT Msg, WPARAM wParam, LPARAM lParam );
  42. static UINT CALLBACK
  43. PropSheetPageProc( HWND hwnd, UINT uMsg, LPPROPSHEETPAGE ppsp );
  44. HRESULT _DisplayClientsQueryForm( );
  45. public: // Methods
  46. friend LPVOID CServerTab_CreateInstance( void );
  47. // ITab
  48. STDMETHOD(AddPages)( LPFNADDPROPSHEETPAGE lpfnAddPage, LPARAM lParam, LPUNKNOWN punk );
  49. STDMETHOD(ReplacePage)( UINT uPageID, LPFNADDPROPSHEETPAGE lpfnReplaceWith,
  50. LPARAM lParam, LPUNKNOWN punk );
  51. STDMETHOD(QueryInformation)( LPWSTR pszAttribute, LPWSTR * pszResult );
  52. STDMETHOD(AllowActivation)( BOOL * pfAllow );
  53. };
  54. typedef CServerTab* LPSERVERTAB;
  55. #endif // _SERVER_H_