"requireAdministrator" is the other choice I believe.
On Fri, Oct 2, 2015 at 11:19 PM David Vanderschel <d...@austin.rr.com>
wrote:

>
>
> On 9/29/2015 11:26 AM, Mark Ludwig wrote:
>
> I just want to point out that it's not necessary to rebuild Emacs in order
> to change the embedded manifest.  You just need the tools and the target
> executable.  You can extract the current manifest to a text file.  After
> changing or adding what you want to the text file, you can update the
> embedded manifest in the target executable.
>
> Something like:
>
> mt -inputresource:emacs.exe;#1 -out:extracted.manifest
> ... edit extracted.manifest ...
> mt -updateresource:emacs.exe;#1 -manifest extracted.manifest
>
> Note that the syntax of mt is inconsistent w.r.t. whether there is a space
> or colon after the option.  See the docs for details.
>
> (Sorry, but I have no idea whether adding Windows 10 as a supported OS
> will help with the problem.)
>
> Hope this helps,
> Mark
>
>
> I copied mt.exe and the 24.5.1 emacs.exe to the desktop on my Windows 8.1
> computer.  Observe result:
>
> C:\Users\HP\Desktop>mt -inputresource:emacs.exe;#1 -out:emacs.manifest
>
> C:\Users\HP\Desktop>mt -updateresource:emacs.exe;#1 -manifest
> emacs.manifest
> invalid value for uiAccess in string: level="asInvoker"/
> invalid value for uiAccess in string: level="asInvoker"/
>
> Here is what the file looked like after I edited it:
>
> <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
> <assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
>   <dependency>
>     <dependentAssembly>
>       <assemblyIdentity type="win32"
> name="Microsoft.Windows.Common-Controls"
>                         version="6.0.0.0" processorArchitecture="X86"
>                         publicKeyToken="6595b64144ccf1df"
>                         language="*"/>
>     </dependentAssembly>
>   </dependency>
>   <assemblyIdentity version="1.0.0.0" processorArchitecture="X86"
>             name="emacs" type="win32"/>
>   <description>GNU Emacs</description>
>   <trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
>     <security>
>       <requestedPrivileges>
>         <requestedExecutionLevel level="asInvoker"/>
>       </requestedPrivileges>
>     </security>
>   </trustInfo>
>     <compatibility xmlns="urn:schemas-microsoft-com:compatibility.v1">
>       <application>
>         <!-- Windows 8.1 -->
>         <supportedOS Id="{1f676c76-80e1-4239-95bb-83d0f6d0da78}"/>
>         <!-- Windows Vista -->
>         <supportedOS Id="{e2011457-1546-43c5-a5fe-008deee3d3f0}"/>
>         <!-- Windows 7 -->
>         <supportedOS Id="{35138b9a-5d96-4fbd-8e2d-a2440225f93a}"/>
>         <!-- Windows 8 -->
>         <supportedOS Id="{4a2f28e3-53b9-4441-ba9c-d69d4a4a6e38}"/>
>
>         <!-- Windows 10 -->
>         <supportedOS Id="{8e0f7a12-bfb3-4fe8-b9a5-48fd50a15a9a}"/>
>       </application>
>     </compatibility>
> </assembly>
>
> However, the "invalid value for uiAccess" error occurred whether I edited
> the file or not.
>
> I have no idea what string I should try to pass in the manifest file
> instead of "asInvoker".
>
> There were additional complications.  I tried it first on my Windows 8.1
> desktop with the 24.3.1 emacs.exe I have installed there.  It turns out
> that its manifest does not even have OS compatibility indicators (just
> "win32"); so, at first, I thought the whole thing might be irrelevant.
> Then it occurred to me that maybe 24.5.1 was different.  However, I could
> not get mt.exe to work on Windows 10.  It complained about 2 missing DLLs.
> I secured those, and then it was complaining about something else; so I
> gave up and copied the 24.5.1 emacs.exe to the desktop on my Windows 8.1
> machine.  And, as it turns out and much to my surprise, it does have the OS
> compatibility indicators.  But then the update of the manifest failed
> anyway.  (The failed update leaves the manifest in a corrupted state.)
>
> Any more ideas?
>
> Regards,
>   David V.
>
>

Reply via email to