windows-nt/Source/XPSP1/NT/printscan/print/drivers/usermode/inc/winres.h
2020-09-26 16:20:57 +08:00

87 lines
1.8 KiB
C

/*++
Copyright (c) 1996-1999 Microsoft Corporation
Module Name:
winres.h
Abstract:
This file contain structure and function prototypes required for
obtaining resource data from windows files
Environment:
Windows NT Unidrv driver
Revision History:
dd-mm-yy -author-
description
--*/
#ifndef _WINRES_H_
#define _WINRES_H_
//
// Maximum number of resources DLLs per minidriver.
//
#define MAX_RESOURCE 0x80
#define RCID_DMPAPER_SYSTEM_NAME 0x7fffffff
typedef struct _WINRESDATA
{
HANDLE hResDLLModule; // Module handle Root resource DLL
DWORD cLoadedEntries; // Number of Resource Dlls loaded
HANDLE ahModule[MAX_RESOURCE]; // Module handle array for other resources
WCHAR wchDriverDir[MAX_PATH]; // Driver Directory
PWSTR pwstrLastBackSlash; // Pointer to last back slash in Driver dir.
PUIINFO pUIInfo; // Pointer to UI Info
} WINRESDATA, *PWINRESDATA;
//
// The structure passed to, and filled in by, GetWinRes(). Contains
// information about a specific resource type & name.
//
typedef struct
{
VOID *pvResData; // Address of data
INT iResLen; // Resource size
} RES_ELEM;
#define WINRT_STRING 6 // Minidriver string resource ID
BOOL
BInitWinResData(
WINRESDATA *pWinResData,
PWSTR pwstrDriverName,
PUIINFO pUIInfo
);
BOOL
BGetWinRes(
WINRESDATA *pWinResData,
PQUALNAMEEX pQualifiedID,
INT iType,
RES_ELEM *pRInfo
);
VOID
VWinResClose(
WINRESDATA *pWinResData
);
INT
ILoadStringW (
WINRESDATA *pWinResData,
INT iID,
PWSTR wstrBuf,
WORD wBuf
);
#endif // ! _WINRES_H_