95 lines
3.4 KiB
C
95 lines
3.4 KiB
C
//+---------------------------------------------------------------------------
|
|
//
|
|
// Microsoft Windows
|
|
// Copyright (C) Microsoft Corporation, 2000.
|
|
//
|
|
// File: Main.h
|
|
//
|
|
// Contents: Header file for function proto types for main.cpp
|
|
//
|
|
// Objects:
|
|
//
|
|
// Coupling:
|
|
//
|
|
// Notes:
|
|
//
|
|
// History: 9/21/00 SHeffner Created
|
|
//
|
|
//----------------------------------------------------------------------------
|
|
#ifndef _CMSRDIAG
|
|
#define _CMSRDIAG
|
|
|
|
|
|
//+---------------------------------------------------------------------------
|
|
//
|
|
// Function proto typing
|
|
//
|
|
//----------------------------------------------------------------------------
|
|
|
|
void Log(char *szString);
|
|
void Log2(char *szString, char *szString2);
|
|
void GetRestoreGuid(char *szString);
|
|
void SRGetFileInfo(char *szLogFile);
|
|
void InfoPerFile(char *szLogFile, WCHAR *szFileName);
|
|
void ArgParse(int argc, char *argv[], char *szArgCmd[]);
|
|
void Usage();
|
|
|
|
//+---------------------------------------------------------------------------
|
|
//
|
|
// Structure Definations
|
|
//
|
|
//----------------------------------------------------------------------------
|
|
|
|
//Listing of the files, that we will gather in the version information, and file statics from.
|
|
// This information will be stored in the SR-FileList.txt
|
|
WCHAR *wszFileVersionList[] = { TEXT("\\system32\\drivers\\sr.sys"),
|
|
TEXT("\\system32\\srclient.dll"),
|
|
TEXT("\\system32\\srsvc.dll"),
|
|
TEXT("\\system32\\srrstr.dll"),
|
|
TEXT("\\system32\\restore\\filelist.xml"),
|
|
TEXT("\\system32\\restore\\rstrui.exe"),
|
|
TEXT("\\system32\\restore\\srframe.mmf"),
|
|
TEXT("\\system32\\restore\\sr.mof"),
|
|
TEXT("") };
|
|
|
|
//Listing of the resourece strings that we are looking for in the structure wszFileVersionList.
|
|
WCHAR *wszVersionResource[] = { TEXT("Comments"),
|
|
TEXT("CompanyName"),
|
|
TEXT("FileDescription"),
|
|
TEXT("FileVersion"),
|
|
TEXT("InternalName"),
|
|
TEXT("LegalCopyright"),
|
|
TEXT("LegalTrademarks"),
|
|
TEXT("OriginalFilename"),
|
|
TEXT("ProductName"),
|
|
TEXT("ProductVersion"),
|
|
TEXT("PrivateBuild"),
|
|
TEXT("SpecialBuild"),
|
|
TEXT("") };
|
|
|
|
//Listing of the Registry keys that we are grabbing. The first param is the Path from HKLM, the Second Param
|
|
// is either 0 for not recursing, or 1 if you want to recurse all of the sub keys.
|
|
WCHAR *wszRegKeys[][2] = { TEXT("Software\\Microsoft\\Windows NT\\CurrentVersion"), TEXT("0"),
|
|
TEXT("Software\\Microsoft\\Windows NT\\CurrentVersion\\SystemRestore"), TEXT("1"),
|
|
TEXT("System\\CurrentControlSet\\Services\\SR"), TEXT("1"),
|
|
TEXT("System\\CurrentControlSet\\Services\\SRService"), TEXT("1"),
|
|
TEXT("Software\\Policies\\Microsoft\\Windows NT\\SystemRestore"), TEXT("1"),
|
|
TEXT(""), TEXT("") };
|
|
|
|
|
|
//Listing of the files that we will gather on the system into the cab, based on the relative root starting
|
|
// from the Windir directory.
|
|
char *szWindirFileCollection[] = { "\\system32\\restore\\machineguid.txt",
|
|
"\\system32\\restore\\filelist.xml",
|
|
"\\system32\\restore\\rstrlog.dat",
|
|
"" };
|
|
|
|
//Listing of the files, that we will collect at the root of the SystemVolumeInformation\_Restore{GUID} directory
|
|
char *szSysVolFileCollection[] = { "_filelst.cfg",
|
|
"drivetable.txt",
|
|
"_driver.cfg",
|
|
"fifo.log",
|
|
"" };
|
|
|
|
#endif
|