본문 바로가기
개발 언어/Qt

Qt로 만든 프로그램 관리자 권한으로 실행 방법

by 루이스파파 2025. 5. 8.
728x90
반응형

Qt로 만든 프로그램을 관리자 권한으로 실행하려면, 윈도우의 UAC(User Account Control)에서 관리자 권한을 요청하는 설정을 프로젝트에 추가해야 합니다. 가장 간단한 방법은 Qt 프로젝트의 .pro 파일에 아래 설정을 추가하는 것입니다.


방법 1: .pro 파일에 한 줄 추가

.pro 파일에 다음 코드를 추가하세요:

QMAKE_LFLAGS += /MANIFESTUAC:"level='requireAdministrator' uiAccess='false'"

이렇게 하면 빌드된 실행 파일이 항상 관리자 권한으로 실행됩니다. 아이콘에 방패 모양이 표시되며, 실행 시 UAC 권한 상승 창이 뜹니다[^1][^3].


방법 2: RC 및 Manifest 파일 직접 추가

좀 더 세밀하게 제어하고 싶다면, RC 파일과 Manifest 파일을 만들어 프로젝트에 포함시키는 방법도 있습니다.

  1. Manifest 파일 생성
    프로젝트명.exe.manifest 파일을 만들어 아래와 같이 작성합니다:
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
  <trustInfo xmlns="urn:schemas-microsoft-com:asm.v2">
    <security>
      <requestedPrivileges>
        <requestedExecutionLevel level="requireAdministrator" uiAccess="false"/>
      </requestedPrivileges>
    </security>
  </trustInfo>
</assembly>
  1. RC 파일 생성
    프로젝트명.rc 파일을 만들어 아래와 같이 작성합니다:
#include <windows.h>
CREATEPROCESS_MANIFEST_RESOURCE_ID RT_MANIFEST "프로젝트명.exe.manifest"
  1. .pro 파일에 추가
win32 {
    RC_FILE = 프로젝트명.rc
    CONFIG += embed_manifest_exe
    QMAKE_LFLAGS_WINDOWS += /MANIFESTUAC:level='requireAdministrator'
}

이렇게 설정하면 빌드 시 자동으로 관리자 권한 manifest가 포함됩니다[^2][^3].


참고 사항

  • 설정 후 빌드하면 실행 파일에 방패 아이콘이 표시되고, 항상 관리자 권한으로 실행됩니다.
  • Qt Creator 자체를 관리자 권한으로 실행한 뒤 빌드해야 적용이 확실히 되는 경우도 있습니다[^2].
  • 이 방법은 Windows 환경에서만 적용됩니다.

요약:
.pro 파일에
QMAKE_LFLAGS += /MANIFESTUAC:"level='requireAdministrator' uiAccess='false'"
를 추가하는 것이 가장 쉽고 빠른 방법입니다.


728x90
반응형