1. 程式人生 > >golang windows程式獲取管理員許可權(UAC )

golang windows程式獲取管理員許可權(UAC )

在windows上執行有關係統設定命令的時候需要管理員許可權才能操作,比如修改網絡卡的禁用、啟用狀態。雙擊執行是不能正確執行命令的,只有右鍵以管理員身份執行才能成功。

為解決此問題,花了很長時間找了各種方法,最終找到一個簡單的方法,雙擊也能執行成功了。過程如下:

    1> go get github.com/akavel/rsrc
    2> 把nac.manifest 檔案拷貝到當前windows專案根目錄
    3> rsrc -manifest nac.manifest -o nac.syso
    4> go build


    nac.mainfest的內容為:
    <?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.v3">
    <security>
    <requestedPrivileges>
    <requestedExecutionLevel level="requireAdministrator"/>
    </requestedPrivileges>
    </security>
    </trustInfo>
    </assembly>