windows-nt/Source/XPSP1/NT/com/ole32/cs/csadmin/pcs/message.cxx
2020-09-26 16:20:57 +08:00

72 lines
1.5 KiB
C++

#include "precomp.hxx"
extern void DumpOnePackage( MESSAGE *, PACKAGEDETAIL * );
void
_MESSAGE::Init()
{
fDumpOnly = 0;
fPathTypeKnown = 0;
pClsDict = new CLSDICT;
pAppDict = new APPDICT;
pPackageDict = new PDICT;
pIIDict = new IIDICT;
pPackagePath = 0;
pPackageName = 0;
hRoot = HKEY_CLASSES_ROOT;
RunningAppIDValue = 1;
pSetupCommand = 0;
pClassStoreName = 0;
pClassStoreDomainName = 0;
pIconPath = 0;
pDumpOnePackage = 0;
GetSystemTimeAsFileTime(&ftLow);
ftHigh = ftLow;
Locale = MAKELANGID( LANG_ENGLISH,SUBLANG_ENGLISH_US);
// Architecture= MAKEARCHITECTURE( HW_X86, OS_WINNT );
ActFlags = 0;
}
_MESSAGE::_MESSAGE()
{
Init();
}
_MESSAGE::_MESSAGE( HKEY hKey )
{
Init();
hRoot = hKey;
}
_MESSAGE::_MESSAGE(char * pRootKeyName )
{
Init();
SetRootKey( pRootKeyName );
}
_MESSAGE::~_MESSAGE()
{
if( pClsDict )
delete pClsDict;
if( pAppDict )
delete pAppDict;
if( pPackageDict )
delete pPackageDict;
if( pIIDict )
delete pIIDict;
}
LONG
_MESSAGE::SetRootKey(
char * pRootKeyName )
{
LONG error = RegOpenKeyEx( HKEY_LOCAL_MACHINE,
pRootKeyName,
0,
KEY_ALL_ACCESS,
&hRoot );
return error;
}