Всем доброе утро, а есть ли в Qt возможность запретить

всем пользователям писать в файл на windows? aka сделать его ReadOnly?
Пробовал через QFile(filepath).setPermissions(QFileDevice::ReadOwner);
Но возможность изменять файл все равно есть. Может читаю где-то не там, но таблица permission'ов выглядит так, будто эти permission'ы можно только давать, но не забирать.

23 ответов

21 просмотр

Доброе утро. Это задача не фреймворка, а файловой системы. Установить такие права, чтобы другие не могли писать, т.е. только определенный пользователь, а у других убрать "галочку", на запись.

Abort, Retry, Fail?- Автор вопроса
Renat Garaev
Доброе утро. Это задача не фреймворка, а файловой ...

Хмм, как я и думал, программа должна запускаться от другого пользователя. Спасибо

В Виндоус можно только открыть файл и держать его открытым до конца программы. И то это не 100% защита.

Abort, Retry, Fail?- Автор вопроса
𝔾𝕣𝕒𝕪 ℝ𝕒𝕧𝕖𝕟
Тот же far manager такие файлы открывает на раз-дв...

В моем случае обычный пользователь. Проблема скорее в том, чтобы не дать ему менять файлик под себя, не выполняя работу программы.

Dmitriy [Отпуск]
Прям pagefile.sys откроет?

Не пробовал, но там пермишны выше любых админских в системе. Только из-за этого может не открыть

𝔾𝕣𝕒𝕪 ℝ𝕒𝕧𝕖𝕟
Не пробовал, но там пермишны выше любых админских ...

Поэтому я и написал, что дело файловой системы. Установите разрешения на SYSTEM и никто не прочитает ваш файл😂кроме программы, выполняющейся с такими же правами

Опишите задачу. 1) Не давать менять, пока программа запущена 2) Не давать менять, когда программа не запущена 3) Не давать читать, когда программа запущена 4) Иное

Abort, Retry, Fail?- Автор вопроса
Dmitriy [Отпуск]
Опишите задачу. 1) Не давать менять, пока програм...

Не давать менять в принципе. Программа создает новый файл, пишет в него. Есть идея делать проще - делать в pdf вместо txt

Abort, Retry, Fail?
Не давать менять в принципе. Программа создает нов...

Я вам написал же решение, используйте цифровую подпись. Gnu GPG , например. Можете подписывать файл, с флешки с токеном

Abort, Retry, Fail?- Автор вопроса
Renat Garaev
Я вам написал же решение, используйте цифровую под...

Я не спорю, что это хороший вариант. Скорее рассматриваю все. И стараюсь сделать относительно просто для того, чтобы после меня это поддерживалось чуть ли не таким же эникейщиком, как я

Abort, Retry, Fail?
Не давать менять в принципе. Программа создает нов...

Редактировать можно что угодно, если оно не подписано

Abort, Retry, Fail?
Я не спорю, что это хороший вариант. Скорее рассма...

Еще @anatolijs предлагал. Боитесь что изменят? Ну храните тогда конфиг приложения на сервере. Тогда только "лицензионная" копия будет файл использовать. Хотя, кто-то же может и под отладчиком ваш файл в оперативной памяти исправить

Abort, Retry, Fail?- Автор вопроса
firther Korniienko
Pdf нормально редактируется.

Без предварительно установленного редактора пдф?

Похожие вопросы

Обсуждают сегодня

вопрос: кто как решает вопрос с динамической подгрузкой скриптов для отдельных страниц с включенным turbo router?
Sergei Toroptsev
25
Сonst magicTgHTML = (text, entities) => { let processedText = text; let offsetShift = 0; entities.forEach(entity => { const { offset, length, type, url, ...
Андрей
1
Это что теперь, любой бот сможет принимать платежи без ебли с юр лицами?
Lencore
8
как через magic forms посылать мультиязычные имейлы?
Sergei Toroptsev
4
Не догоняю немного каким боком тут эппл Вот есть веб (мини) апп, который по факту веб сайт, просто в телеге веб вью и если там оплата, то нежно вот эти приседания?
e\\/gen
7
Друзья, за кем?
Magic
12
ого, спасибо Никит, ты как всегда кладезь нужной инфы! Сейчас пойду копаться, а мне релиз создать как и версию самого плагина? типа 1.0.8?
Alex Blaze
9
Почему Telegram пишет, что объект media не найден, хотя на самом деле я его передаю? Делаю на urllib, без зависимостей, так надо. Вызываю метод sendMediaGroup с таким JSON: ...
Alexey S
1
Всем ку, есть у кого нибудь авторег акков тг сразу в сессию pyrogram?
Rick Sanchez
4
Всем привет. Кто-то может подсказать, как можно перевести значения Selection поля, если список значений в нем формируется динамически? Я изначально их получаю из selection дру...
Наталья Селезнева
6
Карта сайта