Windows NT 4.0 source code leak
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.
 
 
 
 
 
 

90 lines
2.1 KiB

//-------------------------------------------------------------------
//
// FILE: LicBvtRm.Cpp
//
// Summary;
// The License Setup Remote Routines BVT
//
// Notes;
//
// History
// 4/25/95 MikeMi Created
//
//-------------------------------------------------------------------
#include <windows.h>
#include <commctrl.h>
#include <stdio.h>
LONG RegDeleteKeyTree( HKEY hkeyParent, PCWSTR pszRemoveKey )
{
HKEY hkeyRemove;
LONG lrt;
// open the key we want to remove
lrt = RegOpenKeyEx( hkeyParent,
pszRemoveKey,
0,
KEY_ALL_ACCESS,
&hkeyRemove );
if (ERROR_SUCCESS == lrt)
{
WCHAR pszName[MAX_PATH];
DWORD cchBuffSize = MAX_PATH;
FILETIME FileTime;
// enum the keys children, and remove those sub-trees
//
while ( ERROR_NO_MORE_ITEMS != (lrt = RegEnumKeyEx( hkeyRemove,
0,
pszName,
&cchBuffSize,
NULL,
NULL,
NULL,
&FileTime ) ) )
{
lrt = RegDeleteKeyTree( hkeyRemove, pszName );
cchBuffSize = MAX_PATH;
}
RegCloseKey( hkeyRemove );
if ((ERROR_SUCCESS == lrt) ||
(ERROR_NO_MORE_ITEMS == lrt) )
{
lrt = RegDeleteKey( hkeyParent, pszRemoveKey );
}
}
return( lrt );
}
//-------------------------------------------------------------------
void PressNGo()
{
printf( "press enter to continue..." );
getchar();
printf( "\n" );
}
//-------------------------------------------------------------------
void _cdecl main( int argc, char *argv[ ], char *envp[ ] )
{
printf( "The RegTree Killer program\n" );
HKEY hkeySetup;
LONG lrt;
// open the key we want to remove
lrt = RegOpenKeyEx( HKEY_LOCAL_MACHINE,
L"SYSTEM\\Setup",
0,
KEY_ALL_ACCESS,
&hkeySetup );
if (ERROR_SUCCESS == lrt)
{
lrt = RegDeleteKeyTree( hkeySetup, L"InfOptions" );
}
printf( "lrt = %d\n",lrt );
}