PlutoBaS-devel
From LinuxMCE
Revision as of 11:18, 19 March 2007 by Jerry finn (Talk | contribs)
Application: Pluto Backup & Share - developed in C#/ VS2003
Components:
PlutoBaSInstaller - used to install the applications PlutoBaS - main application used to configure backup tasks and media shares PlutoBackupSrv - backup service - programmatically executing the backup tasks PlutoBaSMan - taskbar application for controlling the backup service PlutoBaSCtrls - custom visual controls
PlutoBaSInstaller:
- Standard setup application - Files included for deployment: - PlutoBaS.exe - PlutoBaSMan.exe - PlutoBaSSrv.exe - InstallUtil.exe - used for registering the service - MessageSend.exe, pthreadVC.dll - used for sending messages to DCERouter - Registry keys - HKLM\Software\Pluto : - LoggingPath - RouterIP - TaskDBPath
PlutoBaS:
- Main components - BackupTask - includes task management ( tasks list, task configuration - including saving itto a xml file ) - BackupDevices - includes Device Configuration( including reading&writing to xml - Backup - main functions for backup and restore - FolderInfo - includes disk folders management class ( paths, file filters ) - MediaShares - main class for creating/removing media shares and saving shares configuration to a xml file ) - NetAccess - classes for: - Share Management( creating/removing local shares, connecting to remote shares ) - User Management( adding/deleting users - used for creating pluto_user ) - Shell Commnads ( sending commands to DCERouter using MessageSend ) - Pluto Manager ( used for discovering DCERouter - by udp broadcast - and connecting to it )
- TaskLogger - used for logging backup tasks into files - InterProcComm ( using Win32Security ) - manages interprocess communication - used mainly in PlutoBaSSrv & PlutoMan - includes implementation for interprocess Events, Semaphores and MemoryMappedFiles
PlutoBaSCtrls:
- FolderTreeView - tree for browsing through computer folders - EditableListBox - custom listbox with editable items - EditableCheckedListBox - custom checkedlistbox with editable items
PlutoBackupSrv:
- PlutoBackupSrvInstaller - component for registering the service - BackupService - main service component ( loading tasks, stating&stopping backup them, communication with PlutoBaSMan ) - BackupTaskThread - multithreaded component for backup ( every task is executed in a separate thread ) - Pluto
PlutoBaSMan
- main application - using InterprocComm to control the service