Версия для печати
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум на Исходниках.RU > Инсталляторы > Добавление строк в файл hosts |
Автор: semiono 19.10.16, 15:07 |
Нужно добваить пару строк в {sys}\drivers\etc\hosts <{CODE_COLLAPSE_OFF}><{CODE_WRAP_OFF}> 127.0.0.1 www.addr1.com 127.0.0.1 www.addr2.com Во-первых, хотелось бы добавить строки только при их отсутствии, то есть без повторения строк. Во-вторых, хотелось бы учесть случай отсутствия \n в конце последней записи существующего файла. Однако, добавлять NEWLINE в пустой файл вначале, тоже не хотелось бы, для этого я думаю можно использовать проверку размера файла == 0 и тогда делать записи с первой строки. Желательно не выводить окна, если Non Admin mode, чтобы всё тихо было. Лучше бы установить права доступа на файл в любом режиме, но я думаю это лишнее, возможно даже совсем не нужно. |
Автор: Profi 22.10.16, 13:49 |
Я думаю, что TStringList будет вполне достаточно. Однако изменить hosts без админских прав вряд ли получится, и менять права на файл - тоже. Нормальный пользователь за это спасибо не скажет! |
Автор: A.I. 21.12.16, 04:31 |
Первый попавшийся антивирь в лучшем случае ругнется, в худшем молча грохнет. |
Автор: Profi 29.12.16, 20:44 |
Хм, ну не знаю. Надо бы поэкспериментировать. Что в любом случае не отменяет мое предыдущее высказывание! |
Автор: semiono 22.01.17, 11:33 |
Есть круг задач которые решаются таким образом, за что думаю скажут. Например, люди устанавливают приложение, а потом батником записывают в hosts данные, причём многие даже не знают где файл находится и что туда записывают. Тут важно доверие А что там TStringList, много кода будет? Может пример кто напишет? Боюсь классов, сложно! |
Автор: amk 22.01.17, 13:51 |
А некоторые время от времени заглядывают в него и чистят его от строк, которые сами туда не заносили. |