138 lines
2.5 KiB
C
138 lines
2.5 KiB
C
|
extern HINSTANCE ghUIInst;
|
||
|
//extern const WCHAR gszCardKeyW[];
|
||
|
|
||
|
//***************************************************************************
|
||
|
//***************************************************************************
|
||
|
//***************************************************************************
|
||
|
void AllocNewID( HKEY MainKey, LPDWORD lpdw );
|
||
|
void PASCAL WideStringToNotSoWideString( LPBYTE lpBase, LPDWORD lpdwThing );
|
||
|
PWSTR PASCAL MultiToWide( LPCSTR lpStr );
|
||
|
PWSTR PASCAL NotSoWideStringToWideString( LPCSTR lpStr, DWORD dwLength );
|
||
|
|
||
|
|
||
|
|
||
|
//***************************************************************************
|
||
|
//***************************************************************************
|
||
|
//***************************************************************************
|
||
|
typedef enum
|
||
|
{
|
||
|
Dword,
|
||
|
lpDword,
|
||
|
hXxxApp,
|
||
|
hXxxApp_NULLOK,
|
||
|
// lpsz,
|
||
|
lpszW,
|
||
|
lpGet_SizeToFollow,
|
||
|
lpSet_SizeToFollow,
|
||
|
lpSet_Struct,
|
||
|
lpGet_Struct,
|
||
|
Size,
|
||
|
Hwnd
|
||
|
|
||
|
} ARG_TYPE;
|
||
|
|
||
|
|
||
|
typedef struct _FUNC_ARGS
|
||
|
{
|
||
|
DWORD Flags;
|
||
|
|
||
|
ULONG_PTR Args[MAX_TAPI_FUNC_ARGS];
|
||
|
|
||
|
BYTE ArgTypes[MAX_TAPI_FUNC_ARGS];
|
||
|
|
||
|
} FUNC_ARGS, *PFUNC_ARGS;
|
||
|
|
||
|
|
||
|
typedef struct _UI_REQUEST_THREAD_PARAMS
|
||
|
{
|
||
|
BOOL bRequestCompleted;
|
||
|
|
||
|
PFUNC_ARGS pFuncArgs;
|
||
|
|
||
|
LONG lResult;
|
||
|
|
||
|
} UI_REQUEST_THREAD_PARAMS, *PUI_REQUEST_THREAD_PARAMS;
|
||
|
|
||
|
|
||
|
typedef struct _INIT_DATA
|
||
|
{
|
||
|
DWORD dwKey;
|
||
|
|
||
|
DWORD dwInitOptions;
|
||
|
|
||
|
union
|
||
|
{
|
||
|
HWND hwnd;
|
||
|
|
||
|
HANDLE hEvent;
|
||
|
|
||
|
HANDLE hCompletionPort;
|
||
|
};
|
||
|
|
||
|
union
|
||
|
{
|
||
|
LINECALLBACK lpfnCallback;
|
||
|
|
||
|
DWORD dwCompletionKey;
|
||
|
};
|
||
|
|
||
|
HLINEAPP hXxxApp;
|
||
|
|
||
|
BOOL bPendingAsyncEventMsg;
|
||
|
|
||
|
DWORD dwNumTotalEntries;
|
||
|
|
||
|
DWORD dwNumUsedEntries;
|
||
|
|
||
|
PASYNC_EVENT_PARAMS pEventBuffer;
|
||
|
|
||
|
PASYNC_EVENT_PARAMS pValidEntry;
|
||
|
|
||
|
PASYNC_EVENT_PARAMS pFreeEntry;
|
||
|
|
||
|
DWORD dwNumLines;
|
||
|
|
||
|
BOOL bLine;
|
||
|
|
||
|
DWORD dwThreadID;
|
||
|
|
||
|
} INIT_DATA, *PINIT_DATA;
|
||
|
|
||
|
|
||
|
|
||
|
#if DBG
|
||
|
|
||
|
#define DBGOUT(arg) DbgPrt arg
|
||
|
|
||
|
VOID
|
||
|
DbgPrt(
|
||
|
IN DWORD dwDbgLevel,
|
||
|
IN PUCHAR DbgMessage,
|
||
|
IN ...
|
||
|
);
|
||
|
|
||
|
DWORD gdwDebugLevel;
|
||
|
|
||
|
#define DOFUNC(arg1,arg2) DoFunc(arg1,arg2)
|
||
|
|
||
|
LONG
|
||
|
WINAPI
|
||
|
DoFunc(
|
||
|
PFUNC_ARGS pFuncArgs,
|
||
|
char *pszFuncName
|
||
|
);
|
||
|
|
||
|
#else
|
||
|
|
||
|
#define DBGOUT(arg)
|
||
|
|
||
|
#define DOFUNC(arg1,arg2) DoFunc(arg1)
|
||
|
|
||
|
LONG
|
||
|
WINAPI
|
||
|
DoFunc(
|
||
|
PFUNC_ARGS pFuncArgs
|
||
|
);
|
||
|
|
||
|
#endif
|