ile yönetici yürütme düzeyini zorunlu kılmak için manifest dosyası gömün ubuntu altında i586-mingw32msvc ile bir uygulama derleme çapraz.mingw32
Mingw32 ile yönetici yürütme düzeyini gerektirecek bir bildirim dosyasının nasıl yerleştirileceğini anlamakta zorluk çekiyorum.
int main() {
return 0;
}
bu kaynak dosyasını hello.rc
:
1 Manifest "hello.exe.manifest"
bu bildirim dosyası hello.exe.manifest
: Ben ile benim kaynak dosyası derlemek
<?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="hello" type="win32"/>
<description>Hello World</description>
<trustInfo xmlns="urn:schemas-microsoft-com:asm.v2">
<security>
<requestedPrivileges>
<requestedExecutionLevel level="requireAdministrator" uiAccess="false"/>
</requestedPrivileges>
</security>
</trustInfo>
</assembly>
benim Örneğin
bu hello.c
kullandı:
i586-mingw32msvc-gcc -O3 -Os -s -o hello.exe hello.c hello.o
i586-mingw32msvc-windres hello.rc hello.o
Ben ile benim son uygulamayı derlemek.
Uygulamamı Windows altında çalıştırdığımda, aynı klasöre hello.exe.manifest
dosyasını eklerken UAC (beklendiği gibi) tetiklenirken UAC (= yönetici olarak çalışmaz) tetiklenmez.
Neyi özledim?
Edit1:Resource Hacker ile oynamak ben NSIS ile oluşturulan olduğunuz bir Setup.exe
dosyayı açtıktan, tek mantıklı fark hello.rc
o Manifest yazıldığı olsa Manifest
Setup.exe
benim hello.exe
ve Manifest
içinde MANIFEST
yazılı olmasıdır.
EDIT2 O_o: el Kaynak Hacker ile Manifest
grubu değiştirdik:
hello.exe
normal davranıyor UAC uyarı tetikleme ve yönetici olarak çalışıyor.
i586-mingw32msvc-windres
ile bir "böcek" gibi görünüyor. :-)
Bu yardımcı olabilir: http://www.transmissionzero.co.uk/computing/win32-apps-with-mingw/ –
@JonathonReinhart Teşekkür ederim ama ben de bu bağlantıda anlatılanları denedim. link (link): (https://msdn.microsoft.com/en-us/library/bb756973.aspx) de .. Ama hiçbir şey değişmedi .. 'hello.rc' dosyamı' 1 Manifest 'olarak güncelledim merhaba.exe.manifest "' .. Kaynak Korsancı Ben yönetici gerektiren bir NSIS yükleyici (makensis ile derledim) açtım, her şey mantıklı aynıdır; Farklı olan tek şey açık alan "Setup.exe" dosyasında "Manifest" yazılır ve "hello.exe" dosyasında "MANIFEST" yazılır! ([Buraya bakın] (http://i.imgur.com/WzHtXnw.png) –
Normalde .rc dosyasını '.res' dosyasına (" .o "değil) derlersiniz. –