baw17
Junior Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору [Code] //О сохранении бэкапа пользователя уведомлять не будем //Создаем резервную копию в начале установки procedure CurPageChanged(CurPageID: Integer); var //определяемые строки для сохранения резервных файлов s1, s2:string; begin If CurPageID=wpInstalling then begin s1:=ExpandConstant('{sys}')+'\drivers\etc\HOSTS'; s2:=ExpandConstant('{sys}')+'\drivers\etc\Backup_HOSTS_File'; If FileExists(s1) then begin CreateDir(s2); FileCopy(s1, s2+'\HOSTS', True); end; end; end; //Если программа устанавливается повторно, и был зарезервирован файл 'host', то перезапись файла в резервной папке не осуществится //Дописываем строку в 'host' на завершающем этапе установки procedure CurStepChanged(CurStep: TSetupStep); begin If CurStep=ssPostInstall then begin //Строка будет дописываться под последней существующей SaveStringToFile(ExpandConstant('{sys}')+'\drivers\etc\HOSTS', #13 + '127.0.0.1 tonec.com', True); SaveStringToFile(ExpandConstant('{sys}')+'\drivers\etc\HOSTS', #13 + '127.0.0.1 www.tonec.com', True); SaveStringToFile(ExpandConstant('{sys}')+'\drivers\etc\HOSTS', #13 + '127.0.0.1 registeridm.com', True); SaveStringToFile(ExpandConstant('{sys}')+'\drivers\etc\HOSTS', #13 + '127.0.0.1 www.registeridm.com', True); SaveStringToFile(ExpandConstant('{sys}')+'\drivers\etc\HOSTS', #13 + '127.0.0.1 secure.registeridm.com', True); SaveStringToFile(ExpandConstant('{sys}')+'\drivers\etc\HOSTS', #13 + '127.0.0.1 internetdownloadmanager.com', True); SaveStringToFile(ExpandConstant('{sys}')+'\drivers\etc\HOSTS', #13 + '127.0.0.1 www.internetdownloadmanager.com', True); SaveStringToFile(ExpandConstant('{sys}')+'\drivers\etc\HOSTS', #13 + '127.0.0.1 secure.internetdownloadmanager.com', True); SaveStringToFile(ExpandConstant('{sys}')+'\drivers\etc\HOSTS', #13 + '127.0.0.1 mirror.internetdownloadmanager.com', True); SaveStringToFile(ExpandConstant('{sys}')+'\drivers\etc\HOSTS', #13 + '127.0.0.1 mirror2.internetdownloadmanager.com', True); SaveStringToFile(ExpandConstant('{sys}')+'\drivers\etc\HOSTS', #13 + '127.0.0.1 mirror3.internetdownloadmanager.com', True); SaveStringToFile(ExpandConstant('{sys}')+'\drivers\etc\HOSTS', #13 + '127.0.0.1 support@internetdownloadmanager.com', True); end; end; //Деинсталляция. В процессе удаления происходит восстановление требуемого файла и полное удаление резервной папки procedure CurUninstallStepChanged(CurUninstallStep: TUninstallStep); var s1, s2, s3:string; begin case CurUninstallStep of usPostUninstall: begin s1:=ExpandConstant('{sys}')+'\drivers\etc\Backup_HOSTS_File\HOSTS'; s2:=ExpandConstant('{sys}')+'\drivers\etc'; If FileExists(s1) then begin FileCopy(s1, s2+'\HOSTS', False); begin s3:=ExpandConstant('{sys}')+'\drivers\etc\Backup_HOSTS_File'; If DirExists(s3) then begin //Очень опасная функция! Удаляет беспощадно файлы в указанной папке вместе с папкой!!! DelTree(ExpandConstant('{sys}')+'\drivers\etc\Backup_HOSTS_File', True, True, True); end; end; end; end; end; end; |