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
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);
|
|
}
|