Материал взят с открытых источников!!!
Встраивания авторских прав в EXE и OBJ файлы и Borland C++
Поговорим о встраивании авторских прав EXE и OBJ файлы, т.e. о том как сделать так , чтобы в этих файлах хранилась информация, по которой можно было бы идентифицировать ваше творение.
При подходе к этой задаче я столкнулся с некоторыми трудностями. Сперва я использовал нововведение C++ Builder - по встраиванию номера версии (Project/Option-/ Version Info). С помощью этого средства можно встраивать информацию об авторе в exe и dll файл, причем эта информация будет отображаться в свойствах файла (во вкладке версия) , причем в самом файле этот текст живьем вы не найдете.
Но что делать когда вы хотите в строить авторскую информацию в obj файл или встраивании живого текста в exe? Изучив внимательно весь Help можно найти средство для решения этой задачи. Оно состоит в использовании директивы pragma следующим образом:
#pragma comment (comment type, "string")
где comment type - тип (как бы уровень) строки "string", ну и если верить помощи то определяя тип как exestr или user можно добиться того что строка будет в строена в EXE или только в obj файл.
Однако проверяя действия этой директивы в среде C++ Builder 3.0 я обнаружил, что ее работа с типом exestr не совсем соответсвует описанию - она не встраивает требуемую строку в исполняемый файл (exe).
Поискав различные статьи на эту тему, я нашел слова о том, что директива pragma работает не так как описана еще относящиеся к BC++ 3.1, но методы которыми решалась проблема там, не работают в C++ Builder. И так, у нас есть способ встраивания авторской информации в результирующий файл и способ встраивания авторской информации в промежуточный obj файл. Я вижу единственны способ встраивания авторской информации одним методом промежуточный и результирующий файл- объявить и инициализировать соответствующим значением массив символов, т.е. строка типа:
char CR[20]="My Copyright";
только следите, чтобы компилятор не оптимизировал вашу строку.