### Function

# GioUnix DesktopAppInfo launch_uris_as_manager_with_fds

since: 2.58

#### Declaration

    gboolean
    g_desktop_app_info_launch_uris_as_manager_with_fds (
      GDesktopAppInfo* appinfo,
      GList* uris,
      GAppLaunchContext* launch_context,
      GSpawnFlags spawn_flags,
      GSpawnChildSetupFunc user_setup,
      gpointer user_setup_data,
      GDesktopAppLaunchCallback pid_callback,
      gpointer pid_callback_data,
      gint stdin_fd,
      gint stdout_fd,
      gint stderr_fd,
      GError** error
    )

#### Description

Equivalent to `g_desktop_app_info_launch_uris_as_manager()` but allows you to pass in file descriptors for the stdin, stdout and stderr streams of the launched process.

If application launching occurs via some non-spawn mechanism (e.g. D-Bus activation) then `stdin_fd`, `stdout_fd` and `stderr_fd` are ignored.

Available since: 2.58

#### Parameters

`appinfo`

  Type: `GDesktopAppInfo`

  A `GDesktopAppInfo`.

  The data is owned by the caller of the function.

`uris`

  Type: A list of `utf8`

  List of URIs.

  The data is owned by the caller of the function.
  Each element is a NUL terminated UTF-8 string.

`launch_context`

  Type: `GAppLaunchContext`

  A `GAppLaunchContext`.

  The argument can be `NULL`.
  The data is owned by the caller of the function.

`spawn_flags`

  Type: `GSpawnFlags`

  `GSpawnFlags`, used for each process.

`user_setup`

  Type: `GSpawnChildSetupFunc`

  A `GSpawnChildSetupFunc`, used once for each process.

`user_setup_data`

  Type: `gpointer`

  User data for `user_setup`.

  The argument can be `NULL`.
  The data is owned by the caller of the function.

`pid_callback`

  Type: `GDesktopAppLaunchCallback`

  Callback for child processes.

`pid_callback_data`

  Type: `gpointer`

  User data for `callback`.

  The argument can be `NULL`.
  The data is owned by the caller of the function.

`stdin_fd`

  Type: `gint`

  File descriptor to use for child’s stdin, or -1

`stdout_fd`

  Type: `gint`

  File descriptor to use for child’s stdout, or -1

`stderr_fd`

  Type: `gint`

  File descriptor to use for child’s stderr, or -1

`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 function 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` on successful launch, `FALSE` otherwise.