Архивированное приложение не может открыть текстовый файл, успешно открывается из XCode - PullRequest
0 голосов
/ 12 апреля 2019

У меня есть простой файл .txt в моем проекте, который успешно открывается из Xcode.Когда я архивирую приложение, файл не загружается, сбой приложения.У меня есть другие «ресурсы» в той же папке, что и текстовый файл, которые не загружаются.

FILE *fp;
if (!(fp=fopen("highScores.txt", "r")))
{
    fprintf(stderr,"\nfailed to open file:%s\n","highScores.txt");
    exit(0);
}

В продукте .app текстовый файл находится в папке «ресурсы» вместе с другими ресурсами.

Спасибо

1 Ответ

0 голосов
/ 12 апреля 2019

Когда я запускаю приложение под MacOS, рабочий каталог / / - -

Чтобы иметь возможность читать файлы, установленные вместе с приложением, одним из способов является чтение с использованием пути относительно пути исполняемого файла. Чтобы узнать путь к исполняемому исполняемому файлу, просто используйте getpid и proc_pidpath:

#include <unistd.h>
#include <libproc.h>
...
char path[PROC_PIDPATHINFO_MAXSIZE];

if (proc_pidpath(getpid(), path, sizeof(path)) > 0) {
  /* here path contains the path of the executable, for instance
     /Applications/.../xxx.app/Contents/MacOS/xxx */
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...