Приложение с исправляемой встроенной конфигурацией - PullRequest
1 голос
/ 07 марта 2020

Я работаю над кроссплатформенным приложением C ++ (Visual C ++, G CC, clang ++ относительно целевой платформы). Я хочу встроить строку конфигурации в свое приложение и иметь возможность исправления двоичного файла после компиляции, чтобы изменить конфигурацию и сделать ее предварительно сконфигурированной. Теперь я рассматриваю только объявление переменной конфигурации:

const char* embeddedConfig = "*magic*random characters filling the maximum configuration size";

Patcher будет искать магию c в двоичном файле и заменять ее фактической конфигурацией. Я не уверен в стабильности хакерского подхода. Есть ли более надежный способ (возможно, специфицированный компилятором c)?

Ответы [ 2 ]

1 голос
/ 07 марта 2020

Вставить строку в качестве ресурса и использовать функцию UpdateResourceA . Смотри здесь .

1 голос
/ 07 марта 2020

Это будет работать, если вы оставите размер текста без изменений и объявите константу вне какой-либо функции. Такие константы просто помещаются компилятором в секцию данных двоичного файла.

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

...