1. 程式人生 > >通過給程式裡嵌入manifest,使得程式執行時彈出UAC視窗

通過給程式裡嵌入manifest,使得程式執行時彈出UAC視窗

我們知道,當一個程式需要許可權執行時,需要右鍵點選程式,然後使用管理員許可權開啟程式。另外,如果你用vc2008以上開發程式,可以在工程裡選擇uac,在生成的程式裡,如果點選執行程式會彈出需要管理員許可權執行程式的視窗。

現在可以通過把manifest嵌入普通程式裡來達到這個效果。

現在說一下怎麼樣給一個普通的在單擊執行時不會彈出需要管理員許可權的程式增加這個功能。

1、假使這個普通程式名字為myapp.exe。

現在在程式的目錄下編寫一個manifest檔案,命名為myapp.exe.manifest。

manifest檔案如下:

<?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="myapp.exe.manifest"
    type="win32"
/>
<trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
    <security>
        <requestedPrivileges>
            <requestedExecutionLevel level="requireAdministrator" uiAccess="false"/>
        </requestedPrivileges>
    </security>
</trustInfo>
</assembly>

2、現在你點選執行myapp.exe程式,就會彈出需要管理員許可權才可以執行的視窗了。

3、但我們可以不需要這個manifest檔案,原因是我們可以把這個menifest檔案嵌入程式裡,從而在程式目錄下就不需要這個檔案了。

在windows的系統盤目錄裡C:\Program Files\Microsoft SDKs\Windows\v7.0A\bin有個程式是mt.exe。

在控制檯下執行這個命令:mt.exe -manifest H:\myapp.exe.manifest -outputresource:H:\myapp.exe;1

之後我們就可以刪除這個myapp.exe.manifest檔案了。

現在點選你的程式,是不是會彈出了需要管理員許可權的視窗了啊 :)

相關推薦

通過程式嵌入manifest使得程式執行UAC視窗

我們知道,當一個程式需要許可權執行時,需要右鍵點選程式,然後使用管理員許可權開啟程式。另外,如果你用vc2008以上開發程式,可以在工程裡選擇uac,在生成的程式裡,如果點選執行程式會彈出需要管理員許可權執行程式的視窗。 現在可以通過把manifest嵌入普通程式裡來達

程式設計師32歲通過面試還被送走大齡程式設計師路在何方!

在網際網路企業中,有一個奇怪的現象:年齡越大的程式設計師,越不敢重用!因為大多數人覺得,程式設計師到了一定的年齡就不能創造太多價值,要麼當公司管理要麼改行。 不過小編認為這種想法太過片面,為什麼人的價值要用年齡來判斷?也許到了一定年齡吃不了加班的苦,但是並不能否認大齡程式設計師的價值,公司注重新

調查:Java程式設計師最傷心C++程式設計師最年老

說起我們對程式設計世界現有的刻板印象,你一定聽說過類似於沒有人喜歡用Java編碼或者使用C ++都是老人家,等等這樣的話。為了分析這些刻板印象背後的真相,Trestle Technology的資料工程師寫了一個工具。 不知道你有沒有聽說過微軟的Project Oxford,它的Face API可

程式又放大招程式支援直播快來看看你能夠開發自己的直播小程式嗎?

小程式又放大招,小程式支援直播,快來看看你能夠開發自己的直播小程式嗎? https://blog.csdn.net/towtotow/article/details/78923839 https://blog.csdn.net/u012536034/article/details/80524748 &n

微信小程式簡訊驗證碼程式怎麼開通簡訊驗證碼

微信小程式可以通過 , 獲取使用者繫結手機號時, 傳送一條簡訊驗證碼。 但是在實際業務中, 你的小程式會有更多地方使用到簡訊驗證碼功能… 一、 小程式簡訊驗證碼作用 下面的場景, 會經常用到手機

海外小程式微信支付微信小程式跨境支付程式境外支付

在上一篇文章《167個國家和地區可以開通微信海外小程式》 你已經瞭解境外公司可以申請微信小程式, 可以把你的商品和服務, 在小程式中展示。 想要在小程式裡完成交易, 必須涉及到線上支付的問題, 很多人

程式設計師離職後公司程式開始異常 網友:離開前成功完成了報復

我們都生活在一個浮躁的社會中,追名逐利,樂此不彼。公司就像是一座圍城,裡面的人想要出去,外面的人想要進來。所以,來來走走,走走停停,人也就浮躁了。今日這家公司給出薪酬高我在這家,明日哪家更高要我去我也就走了。 在這奔波的路上,我們寢食無憂。網上說:是袁隆平爺爺讓

程式設計師工資高到底程式設計師的工資有多高?你不瞭解的程式設計師!

都說程式設計師的工資高,程式設計師工資是不是過高? 如果和國內和其他職業橫向比較,是的,區域性過高。全世界和其他程式設計師(主要是美帝)比,不是,太低。網際網路是不是毒瘤?以後優秀的人才不都跑去當碼農了?巨集觀角度講,網際網路確實吸引了過多人才,不是以後,是現在很多優秀的人才都往網際網路跑了。大

servlet返回json陣列jspjsp接受json陣列顯示

後端servlet程式碼 ,返回json陣列到前端 //查詢出reader一條資料 Reader reader = readerService.getOneReader(reaReaderNum); PrintWriter out=resp.getWrit

“由於應用程式配置不正確應用程式未啟動。重新安裝應用程式可能會糾正這個問題。”解決思路

     上位機除錯時,解決方案配置可選Debug或者Release模式,在Debug模式下生成的exe檔案放在其它電腦上執行會報錯,在XP系統下執行提示“由於應用程式配置不正確,應用程式未啟動。重新安裝應用程式可能會糾正這個問題。”如果在該電腦上安裝VS2008後

IntelliJ IDEA 修改記憶體大小使得idea執行更流暢。

idea有個配置檔案,可以設定記憶體大小的,就跟咱的jvm的記憶體裡面的堆大小,棧大小等等,可以設定的,而且設定了之後,你這個的效能就會得到提升。具體看下面怎麼修改。 先說所要修改的檔案 idea.vmoptions 的位置,這個不同的平臺,估計名稱可能有些差別。mac

關於winserver2012執行c++程式缺少dll的原因而且c++執行程式安裝失敗的解決辦法

windows server 2012 發現有報錯缺少dll的現象原因: 缺少更新包 解決辦法及步驟 第一步,安裝更新包Windows8.1-KB2919442-x64.m

spark程式打jar包程式包和依賴包分開

1.首先在pom.xml檔案中新增外掛 <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-shade-plugin<

JS如何ul下的所有li繫結點選事件點選使其下標和內容

這是一個非常常見的面試題,出題方式多樣,但考察點相同,下面我們來看看這幾種方法: 方法一: var itemli = document.getElementsByTagName("li"); for(var i = 0; i<itemli.length; i++){   

“應用程式配置不正確應用程式未能啟動” 錯誤的解決

一、問題描述 今天在虛擬機器上裝了XP系統,但執行一個win32 Console程式時彈出對話方塊: “由於應用程式配置不正確,應用程式未能啟動。重新安裝應用程式可能會糾正這個問題” 在英文os上: This application has failed to star

程式設計師的人生為什麼程式設計師大多脫單難分手易

      記得大學的時候,放蕩不拘,喜歡拼搏,自由活潑,陽光活力,感覺戀愛就像過家家,只要你想便很隨意的就會有。但經過畢業季的洗禮後,這一切都發生了一些微妙的變化,終於有一天,我畢業了。畢業後便開始進入了我的程式人生。      在程式設計師這條路上,我越走越遠,漸漸地,我變得孤獨,放棄了全世界的美景,喜歡

shell指令碼中賦值變數中有空格 導致命令執行失敗

功能需求 統計指定時間程式傳送的資料量(按照發送時間) 傳送時間格式2017-12-14 16:18:11, 本來向獲取小時格式 date +'%Y-%m-%d %H' --date="-

解決VB可執行程式啟動錯誤: "應用程式配置不正確應用程式未能啟動"

最近VB編譯後的exe程式執行時候會報告錯誤:"由於應用程式配置不正確,應用程式未能啟動。重新安裝應用程式可能會糾正這個問題。"  之後便結束了. 我在檢視系統日誌後發現下圖資訊:   日誌資訊1: "Generate Activation Context 為 C:/spp工

dll檔案載入執行載入的14001錯誤由於應用程式配置不正確應用程式未能啟動

最近在處理專案問題的的時候發現了這麼一個問題,就是我們的程式在呼叫第三方提供的dll檔案的時候在一臺機器上面會報14001的錯誤,但是在另一臺機器上面不會。兩臺機器上面的作業系統是相同的。針對這個問題和這個錯誤碼,查找了很多的相關資料。 vc錯誤查詢的給予的對於14001的

JS如何ul下的所有li綁定點擊事件點擊使其下標和內容

=== select 代理 我們 一個 ready call 頻繁 document 這是一個非常常見的面試題,出題方式多樣,但考察點相同,下面我們來看看這幾種方法:方法一: var itemli = document.getElementsByTagName("li