0 / 0 / 0
Регистрация: 13.05.2012
Сообщений: 24

Защита текста от копирования

09.09.2012, 16:34. Показов 1807. Ответов 11
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Помогите написать программу, которая будет разрешать копировать текст, только в случае если будет вставлена флешка в компьютер (на флешке будет какой-нибудь файл, разрешающий копирование)
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
09.09.2012, 16:34
Ответы с готовыми решениями:

Защита программ от свободного копирования
Народ, привет. Кто в курсе насчет того, как делается защита программ от копирования? Допустим, я написал программу, как сделать так,...

Защита от теневого копирования информации с флешки
Возникла необходимость защиты данных на флешке от теневого копирования. Думал про написание программы, которая бы разрешала копирование,...

Защита от копирования
Здрасьте!Подскажите пожалуйста,как сделать,чтобы файл нельзя было копировать, но можно было перемещать? Код под Windows, обязательно на...

11
Практикантроп
 Аватар для nick42
4841 / 2726 / 534
Регистрация: 23.09.2011
Сообщений: 5,798
09.09.2012, 17:07
Определяете имя накопителя (флэшка), ставите условие if (FileExists("<flashka>:\\<file.ext>")) и в зависимости от результата (в случае RichEdit) RichEdit->Enabled true или false. Если false, то скопировать текст оттуда можно будет только в графическом виде - копией экрана...
1
0 / 0 / 0
Регистрация: 13.05.2012
Сообщений: 24
09.09.2012, 21:20  [ТС]
Цитата Сообщение от nick42 Посмотреть сообщение
FileExists("<flashka>:\\<file.ext>")
Не хочет проверять есть флешка, все время показывает что флешки нет, и нельзя ли другим каким способом запретить копирование? без выключения формы, нужно просто запретить как нить контекстное меню (впринципе в RichEdit его и так нет) и нажатие клавиш Ctrl+C

Добавлено через 18 минут
З.Ы. с проверкой флешки разобрался, работает, теперь ток нужно как-нить (кроме enabled) запретить копирование
0
Эксперт С++
 Аватар для Avazart
8488 / 6155 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
10.09.2012, 00:20
C++
1
2
3
4
5
6
7
//---------------------------------------------------------------------------
void __fastcall TForm1::RichEdit1SaveClipboard(TObject *Sender, int NumObjects, int NumChars,
                    bool &SaveClipboard)
{
SaveClipboard= false;
}
//---------------------------------------------------------------------------
Странно но этот код не помогает...
0
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
 Аватар для volvo
33379 / 21503 / 8236
Регистрация: 22.10.2011
Сообщений: 36,899
Записей в блоге: 11
10.09.2012, 00:38
Цитата Сообщение от Avazart Посмотреть сообщение
Странно но этот код не помогает...
Ничего странного. Это событие не для запрета копирования из RE в клипбоард. Оно для того, чтобы решить, при уничтожении RE (закрытие приложения), оставлять скопированный оттуда текст в ящике, либо удалить его.
1
Эксперт С++
 Аватар для Avazart
8488 / 6155 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
10.09.2012, 01:14
Тогда самое простое - на давать выделить текст
C++
1
2
3
4
5
6
//---------------------------------------------------------------------------
void __fastcall TForm1::RichEdit1SelectionChange(TObject *Sender)
{
RichEdit1->SelLength= 0;
}
//---------------------------------------------------------------------------
1
0 / 0 / 0
Регистрация: 13.05.2012
Сообщений: 24
10.09.2012, 18:46  [ТС]
Цитата Сообщение от Avazart Посмотреть сообщение
void __fastcall TForm1::RichEdit1SelectionChange(TObject *Sender)
{
RichEdit1->SelLength= 0;
}
//---------------------------------------------------------------------------
RichEdit1->SelLength=0 должно не давать выделить текст? Тогда оно не работает
0
Эксперт С++
 Аватар для Avazart
8488 / 6155 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
10.09.2012, 18:48
Ну да выделение не работает...т.е. и скопировать нечего
0
0 / 0 / 0
Регистрация: 13.05.2012
Сообщений: 24
10.09.2012, 19:49  [ТС]
Цитата Сообщение от Avazart Посмотреть сообщение
Ну да выделение не работает...т.е. и скопировать нечего
Я имел ввиду что RichEdit1->SelLength= 0; не работает, а текст можно выделить

C++
1
2
3
4
5
6
__fastcall TForm1::TForm1(TComponent* Owner)
        : TForm(Owner)
{
RichEdit1->Text="olol oerer werwqr woroee";
RichEdit1->SelLength= 0;
}
0
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
 Аватар для volvo
33379 / 21503 / 8236
Регистрация: 22.10.2011
Сообщений: 36,899
Записей в блоге: 11
10.09.2012, 20:03
andrew21ls, Если сбрасывать SelLength в обработчике события OnSelectionChange (что тебе и было предложено), то текст выделяться не будет.
0
 Аватар для Pirat-SR
67 / 67 / 10
Регистрация: 20.02.2012
Сообщений: 234
11.09.2012, 18:29
Цитата Сообщение от andrew21ls Посмотреть сообщение
З.Ы. с проверкой флешки разобрался, работает, теперь ток нужно как-нить (кроме enabled) запретить копирование
А что мешает с помощью Enabled запретить выделять текст?

Добавляешь на форму ScrollBox, в него добавляешь RichEdit. У RichEdit делаешь Enabled = false и расширяешь RichEdit под размер текста, далее у RichEdit делаешь BorderStyle = bsNone. Вот и всё.
0
Эксперт С++
 Аватар для Avazart
8488 / 6155 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
11.09.2012, 19:00
Калечно....
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
11.09.2012, 19:00
Помогаю со студенческими работами здесь

Защита текстовых файлов от копирования
Здравствуйте) помогите написать программу защити текстовых файлов от копирования. (принцип защиты - от копирования; механизм защиты -...

Защита ПЗ от копирования
Как создать привязку к свободному месту диска?

Защита от копирования
Уважаемые форумчане,помогите пожалуйста написать защиту от копирования,например пароль или привязку к носителю,что -нибудь интересное,но не...

Защита от копирования
Как защитить свой сайт от любого копирования? ЧТобы даже через проводник DOM не смогли ничего прочесть и скопировать?

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


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Опции темы

Новые блоги и статьи
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru