copyPaste manager by Vadim Moshev + код Delphi

Решил написать для себя программу, чтобы облегчить работу с заказчиками во фрилансе в плане взаимодействия и переписки. Не могу точно описать тип этой программы. Некий менеджер буфера обмена или записная книжка, с функцией копирования хранимой информации в буфер обмена.

Зачем нужная эта программа?
При общении с заказчиками иногда возникает необходимость использования неких одних и тех же шаблонных реплик, которые произносятся в адрес различных заказчиков. Чтобы каждый раз не писать одно и тоже, хранил такую информацию в текстовых файлах. Тем не менее, распределённое хранение информации оказалось для меня не очень удобным, поэтому решил хранить информацию централизовано, имея при этом возможность очень быстро вносить изменения в её структуру, а также копировать в буфер обмена.

Что может делать эта программа?
Для описания сущностей, обрабатываемых программой и хранимых во внешнем файле, используется термин «запись», который следует понимать скорей в бытовом смысле (запись в записной книжке), чем в программном (строго говоря, для хранения информации используются не записи, а объекты).
Звучит банально, но записи можно:

  • добавлять;
  • переименовывать;
  • редактировать их содержимое;
  • удалять
  • помещать содержимое в буфер обмена.

Любое изменение записи или их количества влечёт за собой сохранение информации во внешний файл, именуемый records.dat и располагающийся в папке с программой. Это сделано для того, чтобы исключить как можно больше потерь информации, вызванных аварийным завершением работы программы, например, вследствие прекращения подачи электроэнергии. Если в программе удалить все записи, внешний файл также будет удалён, так как в этом случае в нём нет смысла.

При запуске программа считывает записи из внешнего файла и отображает их на главной форме программы. Если внешний файл отсутствует, то программа ничего не отображает, а вместо этого предлагает создать новую запись.

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

Под какую операционную систему написана эта программа?
Для компьютеров под управлением ОС семейства Windows. Сама программа писалась на Windows XP SP3 x86, была протестирована на ноутбуке с Windows 7 x64 Ultimate.

Быть может, кто-то из фрилансеров заинтересуется этой программой, хотя, я думаю, у каждого фрилансера есть что-то подобное и разработанное им лично. Кстати, в силу специфики программы, она может быть использована не только фрилансерами.

Напоследок хочу сказать, что программа не предназначена для хранения логинов, паролей и любой другой конфиденциальной информации, так как для её хранения не применяется шифрование. Архив с программой, исходным кодом и демонстрационной записью лежит в приложении.

Внимание. Для работы с исходным кодом программы вам потребуется компонент coolTrayIcon. Он располагается в том же приложенном архиве вместе с инструкцией по установке.

CPManager.zip (1.1 МБ)

Да, ну и хотелось бы услышать критику и отзывы.

К компонентам можно (нужно) прописывать относительные пути (или с $(PROJECTDIR) и т.п., но вроде обычно не надо), тогда для сборки не придется ничего самому настраивать. https://stackoverflow.com/a/37210218/964478

Материал по ссылке пока не читал, но настройка компонента-то не требуется, однако просто нуждается в установке. Это компонент наряду с TEdit, TMemo, TLabel, и так далее, только невизуальный…

А, походу понял. Ты имеешь в виду, типа кинул компонент в папку с программой, прописал пути и всё готово?

Кинул и прописал сам, потом человек скачал архив и просто собрал/запустил. (в современных языках еще и кидать в архив не надо, все зависимости скачаются менеджером зависимостей типа npm/composer/NuGet)