Leaked source code of windows server 2003
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.
 
 
 
 
 
 

115 lines
3.2 KiB

#include "..\datastormgr.h"
#include <stdio.h>
void __cdecl main ()
{
DWORD dwErr = ERROR_SUCCESS;
CDriveTable *pdt = NULL;
g_pDataStoreMgr = new CDataStoreMgr();
if (g_pDataStoreMgr == NULL)
dwErr = ERROR_NOT_ENOUGH_MEMORY;
if (dwErr == ERROR_SUCCESS)
dwErr = g_pDataStoreMgr->Initialize(TRUE);
pdt = g_pDataStoreMgr->GetDriveTable ();
if (dwErr == ERROR_SUCCESS)
dwErr = pdt->SaveDriveTable (L"dstortest.txt");
pdt = new CDriveTable();
if (pdt == NULL)
dwErr = ERROR_NOT_ENOUGH_MEMORY;
if (dwErr == ERROR_SUCCESS)
dwErr = pdt->LoadDriveTable (L"dstortest.txt");
if (dwErr == ERROR_SUCCESS)
dwErr = pdt->SaveDriveTable (L"CONOUT$");
if (dwErr == ERROR_SUCCESS)
dwErr = g_pDataStoreMgr->Compress (NULL, 25);
if (dwErr == ERROR_SUCCESS)
{
delete g_pDataStoreMgr;
g_pDataStoreMgr = new CDataStoreMgr();
if (g_pDataStoreMgr == NULL)
dwErr = ERROR_NOT_ENOUGH_MEMORY;
WCHAR wcsPath[MAX_PATH];
MakeRestorePath (wcsPath, L"C:\\", L"RP1");
CreateDirectory (wcsPath, NULL);
MakeRestorePath (wcsPath, L"C:\\", L"RP2");
CreateDirectory (wcsPath, NULL);
lstrcat (wcsPath, L"\\A1.TXT");
FILE *f = _wfopen(wcsPath, L"w");
if (f) fclose (f);
MakeRestorePath (wcsPath, L"C:\\", L"RP2");
lstrcat (wcsPath, L"\\change1.log");
f = _wfopen(wcsPath, L"w");
if (f) fclose (f);
}
if (dwErr == ERROR_SUCCESS)
dwErr = g_pDataStoreMgr->Initialize(FALSE);
if (dwErr == ERROR_SUCCESS)
dwErr = g_pDataStoreMgr->CountChangeLogs (NULL);
pdt = g_pDataStoreMgr->GetDriveTable ();
if (dwErr == ERROR_SUCCESS)
dwErr = pdt->SaveDriveTable (L"dstortest.txt");
pdt = new CDriveTable();
if (pdt == NULL)
dwErr = ERROR_NOT_ENOUGH_MEMORY;
if (dwErr == ERROR_SUCCESS)
dwErr = pdt->LoadDriveTable (L"dstortest.txt");
if (dwErr == ERROR_SUCCESS)
dwErr = pdt->SaveDriveTable (L"CONOUT$");
if (dwErr == ERROR_SUCCESS)
dwErr = g_pDataStoreMgr->Compress (NULL, 25);
if (dwErr == ERROR_SUCCESS)
{
SDriveTableEnumContext dtec;
CDataStore *pds = pdt->FindFirstDrive (dtec);
while (pds != NULL)
{
printf ("Found drive %ws %ws\n", pds->GetDrive(), pds->GetGuid());
pds = pdt->FindNextDrive (dtec);
}
printf ("Found drive DONE.\n");
}
if (dwErr == ERROR_SUCCESS)
dwErr = pdt->AddDriveToTable (L"Z:\\", NULL);
if (dwErr == ERROR_SUCCESS)
{
SDriveTableEnumContext dtec;
CDataStore *pds = pdt->FindFirstDrive (dtec);
while (pds != NULL)
{
printf ("Found drive %ws %ws\n", pds->GetDrive(), pds->GetGuid());
pds = pdt->FindNextDrive (dtec);
}
printf ("Found drive DONE.\n");
}
if (dwErr == ERROR_SUCCESS)
{
dwErr = GetDomainMembershipInfo (L"domain.txt");
}
if (dwErr != ERROR_SUCCESS)
printf ("Failed with %d\n", dwErr);
}