Windows7에서 Qt5.7을 사용하고 있습니다. 내 현재 응용 프로그램에서
, 나는 내 자신의 설정 관리자 클래스가, 그 다음과 같습니다Qt : 응용 프로그램/실행 가능 디렉토리에서 설정 ini 파일을 가져 오는 데 문제가 있습니다.
헤더 :
class SettingsManager
{
public:
void write(const QString & key, const QVariant & variant);
QVariant read (const QString & key) const;
private:
static QSettings settings;
};
소스 CPP를 :
이QSettings SettingsManager::settings("settings.ini", QSettings::IniFormat);
void SettingsManager::write(const QString & key, const QVariant & variant)
{
settings.setValue(key, variant);
}
QVariant SettingsManager::read(const QString & key) const
{
return settings.value(key);
}
내 문제입니다 : 나는 몇몇 친구에게 앱을 주었고 아마 다른 작업 디렉토리 나 다른 것으로 시작했다. 그리고 앱은를 찾지 못했다.파일이므로 작동하지 않습니다.
그래서 질문은 : 위의 코드를 수정하여 응용 프로그램/실행 가능 디렉토리에서 settings.ini
파일을 가져올 수 있습니까? 분명히 settings.ini
파일은 항상 앱 자체와 동일한 폴더에 있습니다.
절대 경로를 사용하고있는 것 같지 않습니다. – dtech
'(QCoreApplication :: applicationDirPath() + "/settings.ini")'와 같은 것을 시도했지만 작동하지 않았습니다. 그것은 다음과 같았습니다 : _QApplication 객체를 처음에 인스턴스화하십시오 _... –
어딘가에'QApplication' 또는'QCoreApplication'이 있어야합니다. 정적 함수를 호출하기 전에 먼저 객체를 만들어야합니다. 어쨌든 하나 만들어야 만 큰일이 아니어야합니다. – Hayt