ReactOS 0.4.16-dev-290-g89a3b8f
|
#include "windows.h"
#include "ntndk.h"
#include "strsafe.h"
#include "apphelp.h"
#include "compat_undoc.h"
Go to the source code of this file.
Classes | |
struct | _ShimData |
Macros | |
#define | WIN32_NO_STATUS |
#define | MAX_LAYER_LENGTH 256 |
#define | GPLK_USER 1 |
#define | GPLK_MACHINE 2 |
#define | SHIMDATA_MAGIC 0xAC0DEDAB |
#define | REACTOS_COMPATVERSION_IGNOREMANIFEST 0xffffffff |
Typedefs | |
typedef struct _ShimData | ShimData |
C_ASSERT | ( | offsetof(ShimData, dwMagic) | = =offsetof(ReactOS_ShimData, dwMagic) | ) |
C_ASSERT | ( | offsetof(ShimData, dwRosProcessCompatVersion) | = =offsetof(ReactOS_ShimData, dwRosProcessCompatVersion) | ) |
C_ASSERT | ( | SHIMDATA_MAGIC | = =REACTOS_SHIMDATA_MAGIC | ) |
C_ASSERT | ( | sizeof(ShimData) | = =sizeof(ReactOS_ShimData) | ) |
Retrieves AppPatch directory.
[in] | pdb | Handle to the shim database. |
[out] | path | Pointer to memory in which path shall be written. |
[in] | size | Size of the buffer in characters. |
Definition at line 579 of file hsdb.c.
Referenced by CLayerStringList::CLayerStringList(), SdbInitDatabase(), SeiInit(), and START_TEST().
BOOL WINAPI SdbGetMatchingExe | ( | HSDB | hsdb, |
LPCWSTR | path, | ||
LPCWSTR | module_name, | ||
LPCWSTR | env, | ||
DWORD | flags, | ||
PSDBQUERYRESULT | result | ||
) |
Queries database for a specified exe If hsdb is NULL default database shall be loaded and searched.
[in] | hsdb | Handle to the shim database. |
[in] | path | Path to executable for which we query database. |
[in] | module_name | Unused. |
[in] | env | The environment block to use |
[in] | flags | 0 or SDBGMEF_IGNORE_ENVIRONMENT. |
[out] | result | Pointer to structure in which query result shall be stored. |
Definition at line 439 of file hsdb.c.
Referenced by ApphelpCheckRunAppEx().
Opens specified shim database file. Handle returned by this function may only be used by functions which take HSDB param thus differing it from SdbOpenDatabase.
[in] | flags | Specifies type of path or predefined database. |
[in] | path | Path to the shim database file. |
Definition at line 369 of file hsdb.c.
Referenced by ApphelpCheckRunAppEx(), SdbGetMatchingExe(), SdbPackAppCompatData(), and SeiGetShimData().
BOOL WINAPI SdbPackAppCompatData | ( | HSDB | hsdb, |
PSDBQUERYRESULT | pQueryResult, | ||
PVOID * | ppData, | ||
DWORD * | pdwSize | ||
) |
Definition at line 687 of file hsdb.c.
|
static |
Definition at line 183 of file hsdb.c.
Referenced by SdbpAddExeMatch(), and SdbpAddNamedLayerMatch().
|
static |
Definition at line 247 of file hsdb.c.
Referenced by SdbpAddExeMatch().
|
static |
Definition at line 282 of file hsdb.c.
Referenced by SdbGetMatchingExe().
|
static |
Definition at line 308 of file hsdb.c.
Referenced by SdbGetMatchingExe(), and SdbpPropagateEnvLayers().
|
static |
Definition at line 222 of file hsdb.c.
Referenced by SdbpAddExeLayers(), and SdbpAddLayerMatches().
|
static |
Definition at line 202 of file hsdb.c.
Referenced by SdbpAddExeLayers(), and SdbpAddNamedLayerMatch().
Definition at line 40 of file hsdb.c.
Referenced by SdbpMatchExe().
|
static |
Definition at line 109 of file hsdb.c.
Referenced by SdbGetMatchingExe().
|
static |
Definition at line 48 of file hsdb.c.
Referenced by SdbpMatchExe().
|
static |
Definition at line 341 of file hsdb.c.
Referenced by SdbGetMatchingExe().
DWORD WINAPI SdbQueryData | ( | HSDB | hsdb, |
TAGREF | trWhich, | ||
LPCWSTR | lpszDataName, | ||
LPDWORD | lpdwDataType, | ||
LPVOID | lpBuffer, | ||
LPDWORD | lpcbBufferSize | ||
) |
Retrieve a Data entry
[in] | hsdb | The multi-database. |
[in] | trExe | The tagRef to start at |
[in,opt] | lpszDataName The name of the Data entry to find, or NULL to return all. | |
[out,opt] | lpdwDataType Any of REG_SZ, REG_QWORD, REG_DWORD, ... | |
[out] | lpBuffer | The output buffer |
[in,out,opt] | lpcbBufferSize The size of lpBuffer in bytes |
Definition at line 832 of file hsdb.c.
Referenced by SdbPackAppCompatData().
DWORD WINAPI SdbQueryDataEx | ( | HSDB | hsdb, |
TAGREF | trWhich, | ||
LPCWSTR | lpszDataName, | ||
LPDWORD | lpdwDataType, | ||
LPVOID | lpBuffer, | ||
LPDWORD | lpcbBufferSize, | ||
TAGREF * | ptrData | ||
) |
Retrieve a Data entry
[in] | hsdb | The multi-database. |
[in] | trExe | The tagRef to start at |
[in,opt] | lpszDataName The name of the Data entry to find, or NULL to return all. | |
[out,opt] | lpdwDataType Any of REG_SZ, REG_QWORD, REG_DWORD, ... | |
[out] | lpBuffer | The output buffer |
[in,out,opt] | lpcbBufferSize The size of lpBuffer in bytes | |
[out,opt] | ptrData The tagRef of the data |
Definition at line 799 of file hsdb.c.
Referenced by SdbQueryData().
Closes shim database opened by SdbInitDatabase.
[in] | hsdb | Handle to the shim database. |
Definition at line 417 of file hsdb.c.
Referenced by ApphelpCheckRunAppEx(), SdbGetMatchingExe(), SdbInitDatabase(), SdbPackAppCompatData(), SE_InstallBeforeInit(), and SeiGetShimData().
Translates the given trWhich to a specific database / tagid
[in] | hsdb | Handle to the database. |
[in] | pdb | The Shim database that tiWhich belongs to. |
[in] | tiWhich | Path to executable for which we query database. |
[out,opt] | ptrWhich The tagid that tiWhich corresponds to. |
Definition at line 669 of file hsdb.c.
Referenced by SdbGetLayerTagRef(), SdbpAddExeLayers(), SdbpAddExeMatch(), SdbpAddNamedLayerMatch(), SdbQueryDataEx(), and SeiBuildShimRefArray().
Translates the given trWhich to a specific database / tagid
[in] | hsdb | Handle to the database. |
[in] | trWhich | Tagref to find |
[out,opt] | ppdb The Shim database that trWhich belongs to. | |
[out,opt] | ptiWhich The tagid that trWhich corresponds to. |
Definition at line 638 of file hsdb.c.
Referenced by SdbQueryDataEx(), SeiBuildGlobalInclExclList(), SeiBuildShimRefArray(), and SeiInit().
BOOL WINAPI SdbUnpackAppCompatData | ( | HSDB | hsdb, |
LPCWSTR | pszImageName, | ||
PVOID | pData, | ||
PSDBQUERYRESULT | pQueryResult | ||
) |
Definition at line 761 of file hsdb.c.
Referenced by SeiGetShimData().