久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

Windows 下 Qt 應(yīng)用程序獲得管理員權(quán)限 | DevBean Tech World

 昵稱19447302 2017-09-29

有些時候,,我們需要在 Windows 平臺以管理員權(quán)限運行某個應(yīng)用程序。這樣的應(yīng)用程序會在右下角有一個小盾牌的圖標:

需要管理員權(quán)限的應(yīng)用程序

Windows 如何知道一個應(yīng)用程序需要在運行時獲取管理員權(quán)限,?這是通過向應(yīng)用程序的 exe 文件中注入一個 manifest 文件來告知的,。知道了這個原理,我們就可以編譯出需要管理員權(quán)限的 Qt 程序了,。下面就是編譯過程,。

1. 創(chuàng)建一個普通的 Qt 工程。

Qt 演示程序

2. 在這個 Qt 工程中添加一個 XML 文件,,命名為 menifest.xml,。

添加 menifest.xml

menifest.xml 文件內(nèi)容如下:

XHTML
1
2
3
4
5
6
7
8
9
10
11
12
13
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
    <assemblyIdentity version="1.0.0.0" processorArchitecture="X86" name="applicationname" type="win32"></assemblyIdentity>
    <description>Description of application</description>
    <!-- Identify the application security requirements. -->
    <trustInfo xmlns="urn:schemas-microsoft-com:asm.v2">
        <security>
            <requestedPrivileges>
                <requestedExecutionLevel level="requireAdministrator" uiAccess="false"></requestedExecutionLevel>
            </requestedPrivileges>
        </security>
    </trustInfo>
</assembly>

3. 在 .pro 文件中添加下面語句:

1
2
3
win32 {
    QMAKE_POST_LINK += mt -manifest $$PWD/manifest.xml -outputresource:$$OUT_PWD/debug/$$TARGET".exe" $$escape_expand(\n\t)
}

在這段語句中,win32塊表示僅在 Windows 平臺才會運行其中的語句,。這保證了我們的項目能夠跨平臺編譯,。QMAKE_POST_LINK意味著會在鏈接結(jié)束之后執(zhí)行后面的語句,也就是在鏈接完成后運行:

1
    mt -manifest $$PWD/manifest.xml -outputresource:$$OUT_PWD/debug/$$TARGET".exe" $$escape_expand(\n\t)

這是一條普通的 CMD 命令,,因此需要注意的是,,mt(即 mt.exe)必須在環(huán)境路徑中(mt.exe 是 VS 開發(fā)環(huán)境提供的一個工具,一般安裝過 VS 都會有這個工具),。同時還要注意,,$$PWD/manifest.xml$$OUT_PWD/debug/$$TARGET".exe"都是正確的路徑。為確保路徑正確,,可以在 .pro 文件中使用message()函數(shù)輸出,,例如:

1
    message($$OUT_PWD/debug/$$TARGET".exe")

準備完畢之后,重新運行 qmake 再重新構(gòu)建工程,就可以得到我們想要的可執(zhí)行程序了:

需要管理員權(quán)限的 Qt 程序

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,,所有內(nèi)容均由用戶發(fā)布,,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式,、誘導(dǎo)購買等信息,,謹防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,,請點擊一鍵舉報,。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多