Projekt

Allgemein

Profil

« Zurück | Weiter » 

Revision 16627d5f

Von martin vor mehr als 15 Jahren hinzugefügt

  • ID 16627d5fff631284903757d99731cdb8ab7843ee
  • Vorgänger 0672d164
  • Nachfolger 758467ea

Added path GWEN_PM_SYSDATADIR.

GWEN_PM_SYSDATADIR can be used to determine the folder containing system data
(usually "/usr/share").

git-svn-id: https://devel.aqbanking.de/svn/gwenhywfar/trunk@1625 70169cfe-8b10-0410-8925-dcb4b91034d8

Unterschiede anzeigen:

src/gwenhywfar.c
#define GWEN_REGNAME_SYSCONFDIR "sysconfdir"
#define GWEN_REGNAME_LOCALEDIR "localedir"
#define GWEN_REGNAME_DATADIR "pkgdatadir"
#define GWEN_REGNAME_SYSDATADIR "sysdatadir"
static unsigned int gwen_is_initialized=0;
......
GWEN_DATADIR);
#endif
/* ---------------------------------------------------------------------
* system datadir e.g. "/usr/share" */
GWEN_PathManager_DefinePath(GWEN_PM_LIBNAME, GWEN_PM_SYSDATADIR);
GWEN_PathManager_AddPathFromWinReg(GWEN_PM_LIBNAME,
GWEN_PM_LIBNAME,
GWEN_PM_SYSDATADIR,
GWEN_REGKEY_PATHS,
GWEN_REGNAME_SYSDATADIR);
#if defined(OS_WIN32) || defined(ENABLE_LOCAL_INSTALL)
/* add folder relative to EXE */
GWEN_PathManager_AddRelPath(GWEN_PM_LIBNAME,
GWEN_PM_LIBNAME,
GWEN_PM_SYSDATADIR,
GWEN_SYSDATADIR,
GWEN_PathManager_RelModeExe);
#else
/* add absolute folder */
GWEN_PathManager_AddPath(GWEN_PM_LIBNAME,
GWEN_PM_LIBNAME,
GWEN_PM_SYSDATADIR,
GWEN_SYSDATADIR);
#endif
/* Initialize other modules. */
DBG_DEBUG(GWEN_LOGDOMAIN, "Initializing I18N module");
err=GWEN_I18N_ModuleInit();
......
#if 0
/* Currently unused. */
int GWEN__GetValueFromWinReg(const char *keyPath,
const char *varName,
GWEN_BUFFER *nbuf){
#ifdef OS_WIN32
HKEY hkey;
TCHAR nbuffer[MAX_PATH];
BYTE vbuffer[MAX_PATH];
DWORD nsize;
DWORD vsize;
DWORD typ;
int i;
snprintf(nbuffer, sizeof(nbuffer), keyPath);
/* open the key */
if (RegOpenKey(HKEY_LOCAL_MACHINE,
keyPath,
&hkey)){
DBG_ERROR(GWEN_LOGDOMAIN,
"RegOpenKey \"%s\" failed.", keyPath);
return -1;
}
/* find the variablename */
for (i=0;; i++) {
nsize=sizeof(nbuffer);
vsize=sizeof(vbuffer);
if (ERROR_SUCCESS!=RegEnumValue(hkey,
i, /* index */
nbuffer,
&nsize,
0, /* reserved */
&typ,
vbuffer,
&vsize))
break;
if (strcasecmp(nbuffer, varName)==0 && typ==REG_SZ) {
/* variable found */
RegCloseKey(hkey);
GWEN_Buffer_AppendString(nbuf, (char*)vbuffer);
return 0;
}
} /* for */
RegCloseKey(hkey);
return -1;
#else /* OS_WIN32 */
return -1;
#endif /* OS_WIN32 */
}
#endif /* 0 */

Auch abrufbar als: Unified diff