Итак, я планирую использовать sqlite3 для обновления файла main.db скайпа.
Я использую функцию sqlite3_open, чтобы открыть соединение следующим образом.
int rc = sqlite3_open(filepath,db);
Я пытаюсь создать строку filepath динамически, но странная ошибка сводит меня с ума.
У меня есть две строки szFile и szFilePath, szFile - тестовая строка, которая будет содержать фактический путь к файлу db, а szFilePath - это та же строка, только на этот раз динамически генерируемая функцией.
Дело в том, что перед выполнением функции sqlite3_open обе строки, как вы видите на скриншоте, идентичны, я даже разместил память для вас.
Посмотрите на картинки:
Изображение 1
Изображение 2
Теперь, несмотря на то, что я полностью идентичен, независимо от того, сколько раз я запускаю этот код, работает ТОЛЬКО szFile, при этом другой выдает ошибку «не удается открыть путь к файлу» и полностью сбивает меня с толку. Кроме того, я не знаю, если это нормально, но установив точку останова на следующем if, я вижу, что szFilePath теряет свое значение (заполняется шестнадцатеричными значениями c).
Что может быть не так?