Russian Qt Forum
Ноябрь 02, 2024, 17:32 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Сборка  (Прочитано 2508 раз)
illusionoflife
Гость
« : Сентябрь 30, 2010, 22:17 »

У меня есть проект, лежащий в папке ~/*/project. Собирается, естественно, он в ~/*/project-build-desktop/ Там же уже лежат файлы вида text.txt к которыми программа пользуется с помощью QFile(text.txt). Когда я запуская через Ctrl+R из креатора, все прекрасно работает. Но если я пытаюсь запустить исполняемый руками, то он почему-то ищет файлы в ~. Это я узнал потому, что туда же он файлы создает. В чем может быть проблема? Ещё, я устанавливал Qt на разные системы, иногда в build-desktop есть две папки-дебаг и релиз. Здесь у меня этого нет. Это тоже интересно решить. Настройки перерыл, единственное интересное-каталог сборки-установлен на пункт *текущий каталог. Заранее благодарен.
Записан
crossly
Гость
« Ответ #1 : Сентябрь 30, 2010, 22:20 »

debug и release создается на windows.... указывайте файл в виде ./text.txt
Записан
DOOMer
Чайник
*
Offline Offline

Сообщений: 95



Просмотр профиля
« Ответ #2 : Сентябрь 30, 2010, 23:01 »

illusionoflife, вам надо чтобы файлы открывались/создавались _всегда_ в каталег с исполняемым бинарником вашего приложения? Тогда указывайте  абсолютный путь к файлам через QApplication::applicationDirPath()

Код
C++ (Qt)
QString path = QApplication::applicationDirPath() + QDir::separator() + "file.txt";
QFile file (path);
Записан

Linux x86_64 && Qt 5.4.0 && Qt 4.8.6t && GCC 4.9.2
illusionoflife
Гость
« Ответ #3 : Сентябрь 30, 2010, 23:09 »

crossly Попробовал. Не помогло.
DOOMer Большое спасибо! Помогло. Единственно, удивляет, что раньше всегда если писать имя файла,то он догадывался, какую папку смотреть.
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.07 секунд. Запросов: 23.