Как открыть веб-браузер по умолчанию в Windows в C? - PullRequest
10 голосов
/ 14 июня 2010

В C / C ++ в Windows как открыть веб-сайт с помощью браузера по умолчанию?В Mac OS X я делаю system("open http://url");

Ответы [ 3 ]

19 голосов
/ 14 июня 2010

Вы должны использовать ShellExecute().

Код C для этого так же просто, как:

ShellExecute(NULL, "open", "http://url", NULL, NULL, SW_SHOWNORMAL);

Это было задокументировано в статье базы знаний Microsoft KB 224816, но, к сожалению, статья была удалена, и ее архивная версия отсутствует.

2 голосов
/ 14 июня 2010

В Windows вы можете использовать start http://url в командной строке, чтобы открыть URL в браузере по умолчанию.Однако это, похоже, относится к командной строке и не является реальным исполняемым файлом, поэтому я не думаю, что вы можете запустить его из своей программы на C / C ++.

1 голос
/ 23 января 2019

Чтобы открыть URL в браузере по умолчанию, вы можете использовать команды оболочки и system(), например:

#include <stdlib.h>

int main(void)
{
  system("open https://example.com");
}

open - это команда по умолчанию для открытия содержимого в MacOS, но что происходит, если вы хотите открыть URL-адрес в Windows, Linux или другой операционной системе?

Ну, вам нужно изменить эту команду open.

В Linux

xdg-open <link>

В Windows

start <link>

на MacOS

open <link>

Но есть и хорошие новости, вам не нужно с этим обращаться, я уже создал модуль / пакет / библиотеку , и вы можете установить его, используя CLIB . Он кроссплатформенный, уже работает с операционными системами, и его очень легко включить в ваш проект.

Установка

$ clib install abranhe/opener.c

Использование

#include "opener.h"

int main(void)
{
    opener("https://example.com");
    return 0;
}

Поскольку он написан с использованием команд оболочки, вы также можете открывать локальные каталоги.

// Open current directory
opener(".");
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...