#ifndef STDAFX_H_INCLUDED #define STDAFX_H_INCLUDED #undef ATL_MIN_CRT #include "nt.h" #include "ntrtl.h" #include "nturtl.h" #include "ntlsa.h" #define SECURITY_WIN32 #define SECURITY_KERBEROS #include #include // basic windows functionality #include #include // ImageList, ListView #include #include #include // string functions #include // _ASSERT macro #include #include #include #include #include // specifies valid characters for user names, etc. #include // credui #include #include #include #include #include // Needed by dsclient.h #include #include #include #include #include #include #include #include #include #include #include // our concept of what domain, password and user names should be #define MAX_COMPUTERNAME LM20_CNLEN #define MAX_USER LM20_UNLEN #define MAX_UPN UNLEN #define MAX_PASSWORD PWLEN #define MAX_DOMAIN MAX_PATH #define MAX_WORKGROUP LM20_DNLEN #define MAX_GROUP GNLEN // MAX_DOMAINUSER can hold: / or #define MAX_DOMAINUSER MAX(MAX_UPN, MAX_USER + MAX_DOMAIN + 1) // our headers #include "dialog.h" #include "helpids.h" #include "misc.h" #include "cfdefs.h" #include "dspsprt.h" #include "resource.h" #include "userinfo.h" #include "dialog.h" #include "data.h" // global state EXTERN_C HINSTANCE g_hinst; extern LONG g_cLocks; // resource mapper object - used for wizard chaining STDAPI CResourceMap_Initialize(LPCWSTR pszURL, IResourceMap **pprm); // constructors for COM objects STDAPI CPublishingWizard_CreateInstance(IUnknown* pUnkOuter, IUnknown** ppunk, LPCOBJECTINFO poi); STDAPI CUserPropertyPages_CreateInstance(IUnknown* pUnkOuter, IUnknown** ppunk, LPCOBJECTINFO poi); STDAPI CUserSidDataObject_CreateInstance(PSID psid, IDataObject **ppdo); STDAPI CPassportWizard_CreateInstance(IUnknown* pUnkOuter, IUnknown** ppunk, LPCOBJECTINFO poi); STDAPI CPassportClientServices_CreateInstance(IUnknown* pUnkOuter, IUnknown** ppunk, LPCOBJECTINFO poi); extern const CLSID CLISD_PublishDropTarget; STDAPI CPublishDropTarget_CreateInstance(IUnknown* pUnkOuter, IUnknown** ppunk, LPCOBJECTINFO poi); // template for defining wizard pages typedef struct { LPCWSTR idPage; DLGPROC pDlgProc; LPCWSTR pHeading; LPCWSTR pSubHeading; DWORD dwFlags; } WIZPAGE; typedef struct { LPWSTR pszUser; INT cchUser; LPWSTR pszDomain; INT cchDomain; LPWSTR pszPassword; INT cchPassword; } CREDINFO, * LPCREDINFO; HRESULT JoinDomain(HWND hwnd, BOOL fDomain, LPCWSTR pDomain, CREDINFO* pci, BOOL *pfReboot); VOID SetAutoLogon(LPCWSTR pszUserName, LPCWSTR pszPassword); VOID SetDefAccount(LPCWSTR pszUserName, LPCWSTR pszDomain); // for the users.cpl (shared between usercpl.cpp & userlist.cpp) // All "add user to list" operations are done on the main UI thread - the // filler thread posts this message to add a user #define WM_ADDUSERTOLIST (WM_USER + 101) // (LPARAM) CUserInfo* - the user to add to the listview // (WPARAM) BOOL - select this user (should always be 0 for now) // Wizard text-related constants #define MAX_CAPTION 256 // Maximum size of a caption in the Wizard #define MAX_STATIC 1024 // Maximum size of static text in the Wizard // Wizard error return value #define RETCODE_CANCEL 0xffffffff // keep the debug libraries working... #ifdef DBG #if !defined (DEBUG) #define DEBUG #endif #else #undef DEBUG #endif STDAPI_(void) DllAddRef(void); STDAPI_(void) DllRelease(void); #define RECTWIDTH(rc) ((rc).right - (rc).left) #define RECTHEIGHT(rc) ((rc).bottom - (rc).top) #endif // !STDAFX_H_INCLUDED