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.
247 lines
5.9 KiB
247 lines
5.9 KiB
/*****************************************************************/
|
|
/** Microsoft LAN Manager **/
|
|
/** Copyright(c) Microsoft Corp., 1991 **/
|
|
/*****************************************************************/
|
|
|
|
/*
|
|
* History:
|
|
* RustanL 03-Jan-1991 Created
|
|
* RustanL 10-Jan-1991 Added SHARE1 subclass and iterator
|
|
* ChuckC 23-Mar-1991 code rev cleanup
|
|
* KeithMo 28-Jul-1991 Added SHARE2 subclass and iterator
|
|
* KeithMo 07-Oct-1991 Win32 Conversion.
|
|
* Yi-HsinS 20-Nov-1992 Added _fSticky
|
|
*
|
|
*/
|
|
|
|
|
|
#ifndef _LMOESH_HXX_
|
|
#define _LMOESH_HXX_
|
|
|
|
|
|
#include "lmoenum.hxx"
|
|
|
|
|
|
/**********************************************************\
|
|
|
|
NAME: SHARE_ENUM
|
|
|
|
WORKBOOK:
|
|
|
|
SYNOPSIS: SHARE ENUM class
|
|
|
|
INTERFACE:
|
|
|
|
PARENT: LOC_LM_ENUM
|
|
|
|
USES:
|
|
|
|
CAVEATS:
|
|
|
|
NOTES:
|
|
|
|
HISTORY:
|
|
RustanL 03-Jan-1991 Created
|
|
RustanL 10-Jan-1991 Added SHARE1 subclass and iterator
|
|
|
|
\**********************************************************/
|
|
|
|
DLL_CLASS SHARE_ENUM : public LOC_LM_ENUM
|
|
{
|
|
private:
|
|
BOOL _fSticky;
|
|
|
|
virtual APIERR CallAPI( BYTE ** ppbBuffer,
|
|
UINT * pcEntriesRead );
|
|
|
|
protected:
|
|
SHARE_ENUM( const TCHAR * pszServer, UINT uLevel, BOOL fSticky = FALSE );
|
|
|
|
}; // class SHARE_ENUM
|
|
|
|
|
|
/**********************************************************\
|
|
|
|
NAME: SHARE1_ENUM
|
|
|
|
WORKBOOK:
|
|
|
|
SYNOPSIS: SHARE ENUM level 1 object
|
|
|
|
INTERFACE:
|
|
SHARE1_ENUM() - constructor
|
|
~SHARE1_ENUM() - constructor
|
|
|
|
PARENT: SHARE_ENUM
|
|
|
|
USES:
|
|
|
|
CAVEATS:
|
|
|
|
NOTES:
|
|
|
|
HISTORY:
|
|
RustanL 03-Jan-1991 Created
|
|
RustanL 10-Jan-1991 Added SHARE1 subclass and iterator
|
|
|
|
\**********************************************************/
|
|
|
|
DLL_CLASS SHARE1_ENUM : public SHARE_ENUM
|
|
{
|
|
public:
|
|
SHARE1_ENUM( const TCHAR * pszServer, BOOL fSticky = FALSE );
|
|
|
|
}; // class SHARE1_ENUM
|
|
|
|
|
|
/*************************************************************************
|
|
|
|
NAME: SHARE1_ENUM_OBJ
|
|
|
|
SYNOPSIS: This is basically the return type from the SHARE1_ENUM_ITER
|
|
iterator.
|
|
|
|
INTERFACE: SHARE1_ENUM_OBJ - Class constructor.
|
|
|
|
~SHARE1_ENUM_OBJ - Class destructor.
|
|
|
|
QueryBufferPtr - Replaces ENUM_OBJ_BASE method.
|
|
|
|
QueryName - Returns the sharepoint name.
|
|
|
|
QueryResourceType - Returns the resource type.
|
|
|
|
QueryComment - Returns the sharepoint comment.
|
|
|
|
PARENT: ENUM_OBJ_BASE
|
|
|
|
HISTORY:
|
|
KeithMo 07-Oct-1991 Created.
|
|
|
|
**************************************************************************/
|
|
DLL_CLASS SHARE1_ENUM_OBJ : public ENUM_OBJ_BASE
|
|
{
|
|
public:
|
|
|
|
//
|
|
// Provide properly-casted buffer Query/Set methods.
|
|
//
|
|
|
|
const struct share_info_1 * QueryBufferPtr( VOID ) const
|
|
{ return (const struct share_info_1 *)ENUM_OBJ_BASE::QueryBufferPtr(); }
|
|
|
|
VOID SetBufferPtr( const struct share_info_1 * pBuffer );
|
|
|
|
//
|
|
// Accessors.
|
|
//
|
|
|
|
DECLARE_ENUM_ACCESSOR( QueryName, const TCHAR *, shi1_netname );
|
|
DECLARE_ENUM_ACCESSOR( QueryResourceType, UINT, shi1_type );
|
|
DECLARE_ENUM_ACCESSOR( QueryComment, const TCHAR *, shi1_remark );
|
|
|
|
}; // class SHARE1_ENUM_OBJ
|
|
|
|
|
|
DECLARE_LM_ENUM_ITER_OF( SHARE1, struct share_info_1 );
|
|
|
|
|
|
/*************************************************************************
|
|
|
|
NAME: SHARE2_ENUM
|
|
|
|
SYNOPSIS: SHARE2_ENUM is an enumerator for enumerating the
|
|
sharepoints on a particular server.
|
|
|
|
INTERFACE: SHARE2_ENUM() - Class constructor.
|
|
|
|
PARENT: SHARE_ENUM
|
|
|
|
USES: None.
|
|
|
|
CAVEATS:
|
|
|
|
NOTES:
|
|
|
|
HISTORY:
|
|
KeithMo 28-Jul-1991 Created.
|
|
|
|
**************************************************************************/
|
|
DLL_CLASS SHARE2_ENUM : public SHARE_ENUM
|
|
{
|
|
public:
|
|
SHARE2_ENUM( const TCHAR * pszServer, BOOL fSticky = FALSE );
|
|
|
|
}; // class SHARE2_ENUM
|
|
|
|
|
|
/*************************************************************************
|
|
|
|
NAME: SHARE2_ENUM_OBJ
|
|
|
|
SYNOPSIS: This is basically the return type from the SHARE2_ENUM_ITER
|
|
iterator.
|
|
|
|
INTERFACE: SHARE2_ENUM_OBJ - Class constructor.
|
|
|
|
~SHARE2_ENUM_OBJ - Class destructor.
|
|
|
|
QueryBufferPtr - Replaces ENUM_OBJ_BASE method.
|
|
|
|
QueryName - Returns the sharepoint name.
|
|
|
|
QueryType - Returns the sharepoint type.
|
|
|
|
QueryComment - Returns the sharepoint comment.
|
|
|
|
QueryPermissions - Returns the sharepoint permissions.
|
|
|
|
QueryMaxUses - Returns the maximum number of
|
|
uses allowed.
|
|
|
|
QueryCurrentUses - Returns the current number of
|
|
uses connected to the sharepoint.
|
|
|
|
QueryPath - Returns the sharepoint path.
|
|
|
|
QueryPassword - Returns the sharepoint password.
|
|
|
|
PARENT: ENUM_OBJ_BASE
|
|
|
|
HISTORY:
|
|
KeithMo 07-Oct-1991 Created.
|
|
|
|
**************************************************************************/
|
|
DLL_CLASS SHARE2_ENUM_OBJ : public ENUM_OBJ_BASE
|
|
{
|
|
public:
|
|
|
|
//
|
|
// Provide properly-casted buffer Query/Set methods.
|
|
//
|
|
|
|
const struct share_info_2 * QueryBufferPtr( VOID ) const
|
|
{ return (const struct share_info_2 *)ENUM_OBJ_BASE::QueryBufferPtr(); }
|
|
|
|
VOID SetBufferPtr( const struct share_info_2 * pBuffer );
|
|
|
|
//
|
|
// Accessors.
|
|
//
|
|
|
|
DECLARE_ENUM_ACCESSOR( QueryName, const TCHAR *, shi2_netname );
|
|
DECLARE_ENUM_ACCESSOR( QueryType, UINT, shi2_type );
|
|
DECLARE_ENUM_ACCESSOR( QueryComment, const TCHAR *, shi2_remark );
|
|
DECLARE_ENUM_ACCESSOR( QueryPermissions,UINT, shi2_permissions );
|
|
DECLARE_ENUM_ACCESSOR( QueryMaxUses, UINT, shi2_max_uses );
|
|
DECLARE_ENUM_ACCESSOR( QueryCurrentUses,UINT, shi2_current_uses );
|
|
DECLARE_ENUM_ACCESSOR( QueryPath, const TCHAR *, shi2_path );
|
|
DECLARE_ENUM_ACCESSOR( QueryPassword, const TCHAR *, shi2_passwd );
|
|
|
|
}; // class SHARE2_ENUM_OBJ
|
|
|
|
|
|
DECLARE_LM_ENUM_ITER_OF( SHARE2, struct share_info_2 )
|
|
|
|
|
|
#endif // _LMOESH_HXX_
|