mirror of https://github.com/lianthony/NT4.0
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.
63 lines
1.3 KiB
63 lines
1.3 KiB
/*
|
|
* Registry Association Management
|
|
*
|
|
* HTREGMNG.H
|
|
*
|
|
* Copyright (c) 1995 Microsoft Inc.
|
|
*
|
|
*/
|
|
|
|
#ifndef HTREGMNG_H
|
|
#define HTREGMNG_H
|
|
|
|
/*
|
|
* Registry Management Structures
|
|
*
|
|
* We need a way to specify a set of registry entries to
|
|
* represent an association. We can then test and
|
|
* set the registry appropriately to restore associations
|
|
* as needed
|
|
*
|
|
*/
|
|
|
|
typedef enum { NO_SPECIAL, URL_ICON_0, URL_ICON_1, URL_ICON_2, IE_VRML_ICON, IEXPLORE_PATH, HAS_IEXPLORE } RegSpec;
|
|
|
|
|
|
|
|
/*
|
|
* Flags
|
|
*/
|
|
|
|
#define REGENT_NORMAL 0x0000
|
|
#define REGENT_NOTNEEDED 0x0001
|
|
|
|
|
|
typedef struct _RegEntry {
|
|
RegSpec eSpecial; // Special Handling
|
|
DWORD dwFlags; // Miscellaneous Flags
|
|
char *pszKey; // Key Name
|
|
char *pszValName; // Value Name
|
|
DWORD dwType; // Value Type
|
|
DWORD dwSize; // Value Size
|
|
VOID *pvValue; // Value
|
|
} RegEntry;
|
|
|
|
typedef RegEntry RegList[];
|
|
|
|
typedef struct _RegSet {
|
|
DWORD cEntries; // Count of entries
|
|
HKEY hkRoot; // Root Key (ex. HKEY_LOCAL_MACHINE)
|
|
char *pszRootClean; // Everything below this will be deleted before install
|
|
RegEntry *RegEnt;
|
|
} RegSet;
|
|
|
|
|
|
PUBLIC BOOL IsRegSetInstalled( RegSet *regset );
|
|
PUBLIC BOOL InstallRegSet(RegSet *regset);
|
|
PUBLIC int DetectAndFixAssociations(HINSTANCE hInstance);
|
|
PUBLIC BOOL IsVRMLInstalled( );
|
|
|
|
|
|
|
|
|
|
#endif /* HTREGMNG_H */
|