mirror of
https://github.com/xiaoyifang/goldendict-ng.git
synced 2024-11-23 20:14:05 +00:00
fix for path to Program Files on Windows when it is not c:\program files
This commit is contained in:
parent
163d69b230
commit
cc1a083493
|
@ -12,6 +12,10 @@
|
|||
#include <stdint.h>
|
||||
#endif
|
||||
|
||||
#ifdef Q_OS_WIN32
|
||||
#include "shlobj.h"
|
||||
#endif
|
||||
|
||||
namespace Config {
|
||||
|
||||
namespace
|
||||
|
@ -155,17 +159,34 @@ Class load() throw( exError )
|
|||
|
||||
#ifdef Q_OS_WIN32
|
||||
|
||||
// get path to Program Files
|
||||
wchar_t buf[ MAX_PATH ];
|
||||
SHGetFolderPathW( NULL, CSIDL_PROGRAM_FILES, NULL, 0, buf );
|
||||
QString pathToProgramFiles = QString::fromWCharArray( buf );
|
||||
if ( pathToProgramFiles.isEmpty() )
|
||||
pathToProgramFiles = "C:\\Program Files";
|
||||
|
||||
if ( QDir( pathToProgramFiles + "\\StarDict\\dic" ).exists() )
|
||||
c.paths.push_back( Path( pathToProgramFiles + "\\StarDict\\dic", true ) );
|
||||
|
||||
if ( QDir( pathToProgramFiles + "\\StarDict\\WyabdcRealPeopleTTS" ).exists() )
|
||||
c.soundDirs.push_back( SoundDir( pathToProgramFiles + "\\StarDict\\WyabdcRealPeopleTTS", "WyabdcRealPeopleTTS" ) );
|
||||
else
|
||||
if ( QDir( pathToProgramFiles + "\\WyabdcRealPeopleTTS" ).exists() )
|
||||
c.soundDirs.push_back( SoundDir( pathToProgramFiles + "\\WyabdcRealPeopleTTS", "WyabdcRealPeopleTTS" ) );
|
||||
|
||||
// #### "C:/Program Files" is bad! will not work for German Windows etc.
|
||||
// #### should be replaced to system path
|
||||
|
||||
if ( QDir( "C:/Program Files/StarDict/dic" ).exists() )
|
||||
c.paths.push_back( Path( "C:/Program Files/StarDict/dic", true ) );
|
||||
// if ( QDir( "C:/Program Files/StarDict/dic" ).exists() )
|
||||
// c.paths.push_back( Path( "C:/Program Files/StarDict/dic", true ) );
|
||||
//
|
||||
// if ( QDir( "C:/Program Files/StarDict/WyabdcRealPeopleTTS" ).exists() )
|
||||
// c.soundDirs.push_back( SoundDir( "C:/Program Files/StarDict/WyabdcRealPeopleTTS", "WyabdcRealPeopleTTS" ) );
|
||||
// else
|
||||
// if ( QDir( "C:/Program Files/WyabdcRealPeopleTTS" ).exists() )
|
||||
// c.soundDirs.push_back( SoundDir( "C:/Program Files/WyabdcRealPeopleTTS", "WyabdcRealPeopleTTS" ) );
|
||||
|
||||
if ( QDir( "C:/Program Files/StarDict/WyabdcRealPeopleTTS" ).exists() )
|
||||
c.soundDirs.push_back( SoundDir( "C:/Program Files/StarDict/WyabdcRealPeopleTTS", "WyabdcRealPeopleTTS" ) );
|
||||
else
|
||||
if ( QDir( "C:/Program Files/WyabdcRealPeopleTTS" ).exists() )
|
||||
c.soundDirs.push_back( SoundDir( "C:/Program Files/WyabdcRealPeopleTTS", "WyabdcRealPeopleTTS" ) );
|
||||
#endif
|
||||
|
||||
#ifndef Q_OS_WIN32
|
||||
|
|
Loading…
Reference in a new issue