129 lines
1.7 KiB
C++
129 lines
1.7 KiB
C++
|
#ifndef __MAIN_HXX
|
||
|
#define __MAIN_HXX
|
||
|
|
||
|
//
|
||
|
// System Includes
|
||
|
//
|
||
|
|
||
|
#define UNICODE
|
||
|
#define _UNICODE
|
||
|
#define INC_OLE2
|
||
|
#include <windows.h>
|
||
|
|
||
|
//
|
||
|
// CRunTime Includes
|
||
|
//
|
||
|
|
||
|
#include <stdlib.h>
|
||
|
#include <limits.h>
|
||
|
#include <io.h>
|
||
|
#include <stdio.h>
|
||
|
#include <stddef.h>
|
||
|
|
||
|
|
||
|
//
|
||
|
// Public ADs includes
|
||
|
//
|
||
|
|
||
|
#ifdef __cplusplus
|
||
|
extern "C" {
|
||
|
#endif
|
||
|
|
||
|
#include "activeds.h"
|
||
|
#include "oledb.h"
|
||
|
#include "oledberr.h"
|
||
|
|
||
|
#ifdef __cplusplus
|
||
|
}
|
||
|
#endif
|
||
|
|
||
|
#define NULL_TERMINATED 0
|
||
|
|
||
|
//
|
||
|
// ********* Useful macros
|
||
|
//
|
||
|
|
||
|
#define BAIL_ON_NULL(p) \
|
||
|
if (!(p)) { \
|
||
|
goto error; \
|
||
|
}
|
||
|
|
||
|
#define BAIL_ON_FAILURE(hr) \
|
||
|
if (FAILED(hr)) { \
|
||
|
goto error; \
|
||
|
}
|
||
|
|
||
|
|
||
|
#define FREE_INTERFACE(pInterface) \
|
||
|
if (pInterface) { \
|
||
|
pInterface->Release(); \
|
||
|
pInterface=NULL; \
|
||
|
}
|
||
|
|
||
|
|
||
|
#define ADS_FREE(pMem) \
|
||
|
if (pMem) { \
|
||
|
FreeADsMem(pMem); \
|
||
|
pMem = NULL; \
|
||
|
}
|
||
|
|
||
|
|
||
|
#define FREE_UNICODE_STRING(pMem) \
|
||
|
if (pMem) { \
|
||
|
FreeUnicodeString(pMem); \
|
||
|
pMem = NULL; \
|
||
|
}
|
||
|
|
||
|
|
||
|
void
|
||
|
PrintColumn(
|
||
|
PADS_SEARCH_COLUMN pColumn,
|
||
|
LPWSTR pszColumnName
|
||
|
);
|
||
|
|
||
|
int
|
||
|
AnsiToUnicodeString(
|
||
|
LPSTR pAnsi,
|
||
|
LPWSTR pUnicode,
|
||
|
DWORD StringLength
|
||
|
);
|
||
|
|
||
|
|
||
|
int
|
||
|
UnicodeToAnsiString(
|
||
|
LPWSTR pUnicode,
|
||
|
LPSTR pAnsi,
|
||
|
DWORD StringLength
|
||
|
);
|
||
|
|
||
|
|
||
|
LPWSTR
|
||
|
AllocateUnicodeString(
|
||
|
LPSTR pAnsiString
|
||
|
);
|
||
|
|
||
|
void
|
||
|
FreeUnicodeString(
|
||
|
LPWSTR pUnicodeString
|
||
|
);
|
||
|
|
||
|
void
|
||
|
PrintUsage(
|
||
|
void
|
||
|
);
|
||
|
|
||
|
|
||
|
HRESULT
|
||
|
ProcessArgs(
|
||
|
int argc,
|
||
|
char * argv[]
|
||
|
);
|
||
|
|
||
|
|
||
|
LPWSTR
|
||
|
RemoveWhiteSpaces(
|
||
|
LPWSTR pszText
|
||
|
);
|
||
|
|
||
|
#endif // __MAIN_HXX
|