Помощь с запрашиванием админ прав после компиляции файла Golang

Я только начинаю изучать Golang. У меня есть код, которому необходимо админ права. После компиляции файла мне необходимо каждый раз открывать контекстное меню файла и открывать этот файл с помощью администратора. Я хочу чтобы он при входе в мой файл каждый раз запрашивал админ права.

Я изучил этот вопрос в интернете, есть статья, как можно объединить manifest файл и мой исходный файл GO при компиляции, и чтобы в дальнейшем он всегда при запуске запрашивал админ права.

https://stackoverflow.com/questions/31558066/how-to-ask-for-administer-privileges-on-windows-with-go?rq=3

Вот в этой статье я нашёл ответ (самый первый ответ).

У меня есть следующая структура моей папки:

go\

go.mod 
go.sum
icon.png
main.go
main.manifest

Я создал файл main.manifest и вставил в него следующее:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<assemblyIdentity
    version="9.0.0.0"
    processorArchitecture="x86"
    name="main.exe"
    type="win32"
/>
<description>My App</description>
<trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
    <security>
        <requestedPrivileges>
            <requestedExecutionLevel level="requireAdministrator" uiAccess="false"/>
        </requestedPrivileges>
    </security>
</trustInfo>
</assembly>

Я установил go get github.com/akavel/rsrc,

после я ввожу следующую команду: rsrc.exe -manifest main.manifest [-o FILE.syso] создаётся файл rsrc.syso

Ещё я заметил войдя в этот файл rsrc.syso, я получаю следующее: тоесть непонятные символы, может что-то не так с кодировкой и из-за этого не работает? Я не уверен

d†     Ж       .rsrc           Ђ  <   ј         @  @                    Ђ                  0  Ђ                   H   X   "          <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<assemblyIdentity
    version="9.0.0.0"
    processorArchitecture="x86"
    name="main.exe"
    type="win32"
/>
<description>My App</description>
<trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
    <security>
        <requestedPrivileges>
            <requestedExecutionLevel level="requireAdministrator" uiAccess="false"/>
        </requestedPrivileges>
    </security>
</trustInfo>
</assembly>      H        .rsrc              

Потом я делаю сборку файла: go build main.go

И в итоге я получаю тот же самый файл, который не запрашивает админ права при входе в него.

Что я могу делать не так? Подскажите пожалуйста


Ответы (0 шт):