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.
129 lines
2.4 KiB
129 lines
2.4 KiB
/*++
|
|
|
|
Copyright (C) 2001 Microsoft Corporation
|
|
All rights reserved.
|
|
|
|
Module Name:
|
|
|
|
NCclusapi.hxx
|
|
|
|
Abstract:
|
|
|
|
Declaration of TClusterAPI class.
|
|
|
|
Author:
|
|
|
|
Felix Maxa (AMaxa) 16 May 2001
|
|
|
|
Revision History:
|
|
|
|
--*/
|
|
|
|
#ifndef _NCCLUSAPI_HXX_
|
|
#define _NCCLUSAPI_HXX_
|
|
|
|
class TClusterAPI
|
|
{
|
|
SIGNATURE('TCLS');
|
|
|
|
public:
|
|
|
|
DWORD
|
|
(WINAPI *pfnResUtilFindSzProperty)(
|
|
const PVOID pPropertyList,
|
|
DWORD cbPropertyListSize,
|
|
LPCWSTR pszPropertyName,
|
|
LPWSTR* ppszPropertyValue);
|
|
|
|
HCLUSTER
|
|
(WINAPI *pfnOpenCluster)(
|
|
LPCWSTR lpszClusterName
|
|
);
|
|
|
|
BOOL
|
|
(WINAPI *pfnCloseCluster)(
|
|
HCLUSTER hCluster
|
|
);
|
|
|
|
HCLUSENUM
|
|
(WINAPI *pfnClusterOpenEnum)(
|
|
HCLUSTER hCluster,
|
|
DWORD dwType
|
|
);
|
|
|
|
DWORD
|
|
(WINAPI *pfnClusterCloseEnum)(
|
|
HCLUSENUM hEnum
|
|
);
|
|
|
|
DWORD
|
|
(WINAPI *pfnClusterEnum)(
|
|
HCLUSENUM hEnum,
|
|
DWORD dwIndex,
|
|
LPDWORD lpdwType,
|
|
LPWSTR lpszName,
|
|
LPDWORD lpcchName
|
|
);
|
|
|
|
HRESOURCE
|
|
(WINAPI *pfnOpenClusterResource)(
|
|
HCLUSTER hCluster,
|
|
LPCWSTR lpszResourceName
|
|
);
|
|
|
|
BOOL
|
|
(WINAPI *pfnCloseClusterResource)(
|
|
HRESOURCE hResource
|
|
);
|
|
|
|
DWORD
|
|
(WINAPI *pfnClusterResourceControl)(
|
|
HRESOURCE hResource,
|
|
HNODE hHostNode,
|
|
DWORD dwControlCode,
|
|
LPVOID lpInBuffer,
|
|
DWORD cbInBufferSize,
|
|
LPVOID lpOutBuffer,
|
|
DWORD cbOutBufferSize,
|
|
LPDWORD lpcbBytesReturned
|
|
);
|
|
|
|
TClusterAPI(
|
|
VOID
|
|
);
|
|
|
|
~TClusterAPI(
|
|
VOID
|
|
);
|
|
|
|
HRESULT
|
|
Valid(
|
|
VOID
|
|
);
|
|
|
|
private:
|
|
|
|
typedef enum
|
|
{
|
|
kClusApi,
|
|
kResUtil,
|
|
kEndMarker
|
|
} EClusterDll;
|
|
|
|
typedef struct FuncMap
|
|
{
|
|
SIZE_T Offset;
|
|
LPCSTR pszFunction;
|
|
EClusterDll eClusterDll;
|
|
} FUNCTIONMAP;
|
|
|
|
NO_COPY(TClusterAPI);
|
|
|
|
CONST static FUNCTIONMAP m_FunctionMap[];
|
|
CONST static LPCWSTR m_ClusterDlls[kEndMarker];
|
|
|
|
HMODULE m_Libraries[kEndMarker];
|
|
HRESULT m_Valid;
|
|
};
|
|
|
|
#endif // _NCCLUSAPI_HXX_
|