시작은 미미하나 끝은 쥬쥬하리라.

Programming/QT

[QT] Qt4 - 기본 웹 브라우저로 설정한 URL 열기

코딩뚜벅이 2024. 1. 18. 23:13

기본 웹 브라우저로 설정한 URL 열기

  • 코드
  • startDetached()

코드

미리 정의한 URL을 기본 브라우저로 오픈하는 코드를 구현해보겠습니다. URL을 미리 정의하고 기본 브라우저에서의 오픈은 startDetached() 함수로 구현하였습니다.

 

int main(int argc, char *argv[]) {
    QCoreApplication a(argc, argv);

    QString Url = "https://naver.com/";

    QProcess::startDetached("cmd /c start " + Url);

    return a.exec();
}

 

 

해당 로직은 main 함수에서 구현하였기 때문에 프로젝트를 실행하면 그 즉시 naver.com 도메인으로 연결됩니다.

 


 

startDetached()

startDetached()

QProcess 클래스에 포함된 QT 기본 함수로, 호출한 응용 프로그램과 독립적인 새 프로세스를 시작하는 함수입니다.

 

함수가 기본 웹 브라우저를 실행하는 원리

기본적으로 운영체제는 특정 파일이나 프로토콜과 관련된 기본 응용 프로그램 목록을 유지 및 관리합니다. Windows OS는 "start https://example.com"과 같은 명령어로 웹 브라우저를 실행시킬 수 있습니다.

 

-> 함수가 호출되면 새로운 프로세스가 시작되고 시스템의 파일 연결 설정에 따라 위와 같은 명령줄이 구성됩니다. 함수의 인자로 start와 웹 URL을 전달하였기 때문에 새 프로세스에 앞선 정보가 전달이 되고, 운영체제는 해당 명령을 해석하여 기본 응용 프로그램 즉, 기본 웹 브라우저를 열게 됩니다. 기본 웹 브라우저는 매개변수로 전달된 URL을 처리하여 특정 URL 사이트를 오픈할 수 있습니다.