### Method

# GLib KeyFile load_from_dirs

since: 2.14

#### Declaration

    gboolean
    g_key_file_load_from_dirs (
      GKeyFile* key_file,
      const gchar* file,
      const gchar** search_dirs,
      gchar** full_path,
      GKeyFileFlags flags,
      GError** error
    )

#### Description

This function looks for a key file named `file` in the paths specified in `search_dirs`, loads the file into `key_file` and returns the file’s full path in `full_path`.

If the file could not be found in any of the `search_dirs`, `G_KEY_FILE_ERROR_NOT_FOUND` is returned. If the file is found but the OS returns an error when opening or reading the file, a `G_FILE_ERROR` is returned. If there is a problem parsing the file, a `G_KEY_FILE_ERROR` is returned.

Available since: 2.14

#### Parameters

`file`

  Type: `const gchar*`

  A relative path to a filename to open and parse.

  The data is owned by the caller of the method.
  The value is a platform-native string, using the preferred OS encoding on Unix and UTF-8 on Windows.

`search_dirs`

  Type: An array of `filename`

  `NULL`-terminated array of directories to search.

  The array must be `NULL`-terminated.
  The data is owned by the caller of the method.
  Each element is a platform-native string, using the preferred OS encoding on Unix and UTF-8 on Windows..

`full_path`

  Type: `gchar**`

  Return location for a string containing the full path of the file, or `NULL`.

  The argument will be set by the function.
  The argument can be `NULL`.
  The caller of the method takes ownership of the returned data, and is responsible for freeing it.
  The value is a platform-native string, using the preferred OS encoding on Unix and UTF-8 on Windows.

`flags`

  Type: `GKeyFileFlags`

  Flags from `GKeyFileFlags`.

`error`

  Type: `GError **`

  The return location for a recoverable error.

  The argument can be `NULL`.
  If the return location is not `NULL`, then you must initialize it to a `NULL` `GError*`.
  The argument will be left initialized to `NULL` by the method if there are no errors.
  In case of error, the argument will be set to a newly allocated `GError`; the caller will take ownership of the data, and be responsible for freeing it.

#### Return value

Type: `gboolean`

`TRUE` if a key file could be loaded, `FALSE` otherwise.