// W3SvcAgent.h: interface for the CW3SvcAgent class. // //////////////////////////////////////////////////////////////////////
#if !defined(AFX_W3SVCAGENT_H__D10CF1B7_10C9_45DC_95A7_3AAEA1CFE558__INCLUDED_) #define AFX_W3SVCAGENT_H__D10CF1B7_10C9_45DC_95A7_3AAEA1CFE558__INCLUDED_
#if _MSC_VER > 1000 #pragma once #endif // _MSC_VER > 1000
#include <Accctrl.h>
const ERRORCODE_CHECKSERVICEERROR = 1; const ERRORCODE_CANNTSTARTSERVICE = 2; const ERRORCODE_NOSERVICE = 3; const ERRORCODE_SUCCESS = 0; class CW3SvcAgent { public: CW3SvcAgent(); virtual ~CW3SvcAgent(); public: int CheckW3SvcExist(); bool DeleteWebServer(LPCTSTR lpszServerComment); bool CreateWebServer(LPCTSTR lpszServerComment, LPCTSTR lpszBindAddress,LPCTSTR lpszDomain,LPCTSTR lpszPathName);
bool DeleteVirtualDirectry(LPCTSTR lpszVirtualDirName); bool CreateVirtualDirectry(LPCTSTR lpszVirtualDirName,LPCTSTR lpszDiskPath); bool AddAclToDir(LPTSTR pszDir,LPTSTR pszUserName,DWORD dwAccessRights);
protected: DWORD AddAceToObjectsSecurityDescriptor ( LPTSTR pszObjName, // name of object SE_OBJECT_TYPE ObjectType, // type of object LPTSTR pszTrustee, // trustee for new ACE TRUSTEE_FORM TrusteeForm, // format of trustee structure DWORD dwAccessRights, // access mask for new ACE ACCESS_MODE AccessMode, // type of ACE DWORD dwInheritance // inheritance flags for new ACE ); //Sample //DWORD dwResult = AddAceToObjectsSecurityDescriptor( // szDirectory[i], // SE_FILE_OBJECT, // szUser, // TRUSTEE_IS_NAME, // dwPermission[i], // GRANT_ACCESS , // SUB_CONTAINERS_AND_OBJECTS_INHERIT); };
#endif // !defined(AFX_W3SVCAGENT_H__D10CF1B7_10C9_45DC_95A7_3AAEA1CFE558__INCLUDED_)

|