Решил по быстрому для себя накидать одну "лентяйку" - просмотрщик и редактор файла hosts, что бы вручную до него не лазить.
НО, возникли какие то непонятки с правами доступа к этому файлу. Вроде как все нормально
Т.е. с админскими правами все нормально. Программа запускаемая с правами администратора по идее должна его переписывать. НО, программа (моя) запущенная с правами администратора не может его перепизаписать - "Отказано в доступе по пути "C:\Windows\system32\drivers\etc\hosts"".
Есть другой аспект, если текстовый редактор (AkelPad, к примеру) запустить с правами администратора (через контекстное меню) - файл редактируется. А если, к примеру, в AkelPad открыть его с обычными правами, и при попытке сохранения, когда запросит права админа (функция AkelPad) - вылетает ошибка:
Моя программа ведет себя одинаково, что запуская с правами администратора встроенным алгоритмом, что через контекстное меню. Вот не пойму, это баг или фича, то ли какие то локальные глюки (на моей ОС) или так везде. Как будто "права админа" друг другу рознь... OS - Windows 10 EntS, UAC включен, антивирус выключен. Попробуйте пожалуйста этой утилитой (во вложении) пересохранить файл hosts.-Добавлено 07.01.2023 UltimateHostsEditor - открывает файл hosts в блокноте от СИСТЕМА
Last edited by Adler on 2023-01-09 10:59; edited 4 times in total
И, кстати, классическая проблема Far Manager: запущенный с правами админа он может открыть hosts на запись, но НЕ может сохранить. Видимо, наследование прав тут изначально не работает.
Ander_73, я нашел рабочий пример редактора hosts на C# и вот сижу голову ломаю как это реализовано. Там не так все просто, как казалось, ну или оно так там реализовано "по хитрому".
nikzzzz, не помогает Там общая переменная (путь к файлу) для открываемого и сохраняемого файла, т.е. он перезаписать должен тот же файл, что и открывает. Открывает корректно все. Если бы не это:
Есть другой аспект, если текстовый редактор (AkelPad, к примеру) запустить с правами администратора (через контекстное меню) - файл редактируется. А если, к примеру, в AkelPad открыть его с обычными правами, и при попытке сохранения, когда запросит права админа (функция AkelPad) - вылетает ошибка:
то точно бы решил, что что то в софтине не так, а так возникают сомнения. Я подобные темы (по редактированию hosts) нагуглил, некоторые пишут, что есть такое, но предложенные варианты (запускать от админа) как то не работают. В одном месте писали уже про манифест с примерами, засунул к себе - не работает... P.S. Программка у всех в ошибку при попытке сохранении валится?
Last edited by Adler on 2017-05-03 14:35; edited 2 times in total
Буду иметь ввиду, если разберусь как победить права доступа. Думал наваяь её за 5 минут и забыть, но что то пошло не так ... Она мне уже вроде как и не надо (нашел куда более интересный готовый вариант), но просто интересно разобраться в чем дело.
Adler, Добрый день. Программа валиться, но AkelPad (без админа) редактирует host без проблем (запрашивает только разрешение на перезапись). PS А так есть такой "монстр" Hosts File Editor
41025(запрашивает только разрешение на перезапись)
Как то так:
P.S. Это при сохранении.
Ну мне "монстр" не нужен как раз. Хотел сделать что то максимально простое. Изначально вообще хотел, что бы при запуске просто открывался блокнот с админскими правами и открытым файлом hosts.
Adler, Приветствую. А как программа меняет hosts? Если редактирование проходит на прямую и сохранение - то будут ошибки. А вот если произвести редактирование, и сохранить в другом каталоге, а затем поменять/переместить файл hosts в его папку - так будет работать/менять/заменять.
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum You cannot attach files in this forum You can download files in this forum