67 lines
1.9 KiB
C++
67 lines
1.9 KiB
C++
//
|
|
// Copyright 1997 - Microsoft
|
|
|
|
//
|
|
// SERVER.H - Handles the "IntelliMirror" IDD_PROP_INTELLIMIRROR_CLIENT tab
|
|
//
|
|
|
|
|
|
#ifndef _SERVER_H_
|
|
#define _SERVER_H_
|
|
|
|
// Definitions
|
|
LPVOID
|
|
CServerTab_CreateInstance( void );
|
|
|
|
// CServerTab
|
|
class
|
|
CServerTab:
|
|
public ITab
|
|
{
|
|
private:
|
|
// Enums
|
|
enum {
|
|
MODE_SHELL = 0,
|
|
MODE_ADMIN
|
|
};
|
|
|
|
HWND _hDlg;
|
|
BOOL _fChanged:1; // Are we dirty?
|
|
UINT _uMode; // Admin or Shell mode
|
|
LPUNKNOWN _punkService; // Pointer to service object
|
|
IDataObject * _pido; // IDataObject to be pass to "Clients" dialog and PostADsPropSheet
|
|
LPWSTR _pszSCPDN; // SCP's DN
|
|
LPWSTR _pszGroupDN; // The group's DN. If NULL, not in a group.
|
|
LPUNKNOWN _punkComputer; // Pointer to computer object
|
|
HWND _hNotify; // ADS notify window handle
|
|
|
|
private: // Methods
|
|
CServerTab();
|
|
~CServerTab();
|
|
STDMETHOD(Init)();
|
|
|
|
// Property Sheet Functions
|
|
BOOL _InitDialog( HWND hDlg, LPARAM lParam );
|
|
BOOL _OnCommand( WPARAM wParam, LPARAM lParam );
|
|
HRESULT _ApplyChanges( );
|
|
INT _OnNotify( WPARAM wParam, LPARAM lParam );
|
|
static INT_PTR CALLBACK
|
|
PropSheetDlgProc( HWND hDlg, UINT Msg, WPARAM wParam, LPARAM lParam );
|
|
static UINT CALLBACK
|
|
PropSheetPageProc( HWND hwnd, UINT uMsg, LPPROPSHEETPAGE ppsp );
|
|
HRESULT _DisplayClientsQueryForm( );
|
|
|
|
public: // Methods
|
|
friend LPVOID CServerTab_CreateInstance( void );
|
|
|
|
// ITab
|
|
STDMETHOD(AddPages)( LPFNADDPROPSHEETPAGE lpfnAddPage, LPARAM lParam, LPUNKNOWN punk );
|
|
STDMETHOD(ReplacePage)( UINT uPageID, LPFNADDPROPSHEETPAGE lpfnReplaceWith,
|
|
LPARAM lParam, LPUNKNOWN punk );
|
|
STDMETHOD(QueryInformation)( LPWSTR pszAttribute, LPWSTR * pszResult );
|
|
STDMETHOD(AllowActivation)( BOOL * pfAllow );
|
|
};
|
|
|
|
typedef CServerTab* LPSERVERTAB;
|
|
|
|
#endif // _SERVER_H_
|