mirror of https://github.com/tongzx/nt5src
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.
106 lines
2.9 KiB
106 lines
2.9 KiB
//=======================================================================
|
|
//
|
|
// Copyright (c) 1998-2000 Microsoft Corporation. All Rights Reserved.
|
|
//
|
|
// File: RegUtil.h
|
|
// Author: Charles Ma, 10/20/2000
|
|
//
|
|
// Revision History:
|
|
//
|
|
//
|
|
//
|
|
// Description:
|
|
//
|
|
// IU registry utility library
|
|
//
|
|
//=======================================================================
|
|
|
|
|
|
#ifndef __REG_UTIL_H_ENCLUDED__
|
|
|
|
|
|
|
|
// ----------------------------------------------------------------------
|
|
//
|
|
// define the enum used for version status checking
|
|
//
|
|
// ----------------------------------------------------------------------
|
|
enum _VER_STATUS {
|
|
DETX_LOWER = -2,
|
|
DETX_LOWER_OR_EQUAL = -1,
|
|
DETX_SAME = 0,
|
|
DETX_HIGHER_OR_EQUAL = +1,
|
|
DETX_HIGHER = +2
|
|
};
|
|
|
|
|
|
|
|
// ----------------------------------------------------------------------
|
|
//
|
|
// public function to tell is a reg key exists
|
|
//
|
|
// ----------------------------------------------------------------------
|
|
BOOL RegKeyExists(
|
|
LPCTSTR lpsKeyPath, // key path
|
|
LPCTSTR lpsValName // optional value name
|
|
);
|
|
|
|
|
|
// ----------------------------------------------------------------------
|
|
//
|
|
// public function to tell is a reg value in reg matches given value
|
|
//
|
|
// ----------------------------------------------------------------------
|
|
BOOL RegKeyValueMatch(
|
|
LPCTSTR lpsKeyPath, // key path
|
|
LPCTSTR lpsValName, // optional value name
|
|
LPCTSTR lpsValue // value value
|
|
);
|
|
|
|
|
|
// ----------------------------------------------------------------------
|
|
//
|
|
// public function to tell if a reg key has a string type value
|
|
// that contains given string
|
|
//
|
|
// ----------------------------------------------------------------------
|
|
BOOL RegKeySubstring(
|
|
LPCTSTR lpsKeyPath, // key path
|
|
LPCTSTR lpsValName, // optional value name
|
|
LPCTSTR lpsSubString // substring to see if contained in value
|
|
);
|
|
|
|
|
|
// ----------------------------------------------------------------------
|
|
//
|
|
// public function to tell if a reg key has a version to compare
|
|
// and the compare results
|
|
//
|
|
// ----------------------------------------------------------------------
|
|
BOOL RegKeyVersion(
|
|
LPCTSTR lpsKeyPath, // key path
|
|
LPCTSTR lpsValName, // optional value name
|
|
LPCTSTR lpsVersion, // version in string to compare
|
|
_VER_STATUS CompareVerb // how to compair
|
|
);
|
|
|
|
|
|
|
|
// ----------------------------------------------------------------------------------
|
|
//
|
|
// public function to find out the file path based on reg
|
|
// assumption:
|
|
// lpsFilePath points to a buffer at least MAX_PATH long.
|
|
//
|
|
// ----------------------------------------------------------------------------------
|
|
BOOL GetFilePathFromReg(
|
|
LPCTSTR lpsKeyPath, // key path
|
|
LPCTSTR lpsValName, // optional value name
|
|
LPCTSTR lpsRelativePath,// optional additonal relative path to add to path in reg
|
|
LPCTSTR lpsFileName, // optional file name to append to path
|
|
LPTSTR lpsFilePath
|
|
);
|
|
|
|
|
|
#define __REG_UTIL_H_ENCLUDED__
|
|
#endif //__REG_UTIL_H_ENCLUDED__
|