【问题标题】:add manifest to compiled exe file from jar将清单添加到从 jar 编译的 exe 文件中
【发布时间】:2014-09-06 19:07:54
【问题描述】:

我有一个可运行的 MyApp.jar,我使用 launch4j 编译到 MyApp.exe,因为这个应用程序需要管理员权限,我尝试按照这篇文章添加清单文件:http://msdn.microsoft.com/en-us/library/bb756929.aspx 当我执行

mt.exe –manifest manifest.xml –outputresource:MyApp.exe;#1

进程完成且没有错误,但 MyApp.exe 文件的大小仅从 6mb 减少到 32kb,当我尝试运行它时出现以下错误:错误:无效或损坏的 jarfile。 也许有人知道它有什么问题? 我的清单文件附在下面:

<?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"
     type="win32"/> 
  <description>{app name}</description> 
  <!-- Identify the application security requirements. -->
  <trustInfo xmlns="urn:schemas-microsoft-com:asm.v2">
    <security>
      <requestedPrivileges>
        <requestedExecutionLevel
          level="requireAdministrator"
          uiAccess="true"/>
        </requestedPrivileges>
       </security>
  </trustInfo>
</assembly>

【问题讨论】:

    标签: windows jar permissions uac


    【解决方案1】:

    最后我们通过在编译期间通过 launch4j 应用程序添加清单文件解决了这个问题,并将 uiAccess 标志从 true 更改为 false uiAccess="false"尽管我们的应用程序是图形的,否则它不起作用。

    我用过这个文件:

        <?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"
         type="win32"/> 
      <description>{app name}</description> 
      <!-- Identify the application security requirements. -->
      <trustInfo xmlns="urn:schemas-microsoft-com:asm.v2">
        <security>
          <requestedPrivileges>
            <requestedExecutionLevel
              level="requireAdministrator"
              uiAccess="false"/>
            </requestedPrivileges>
           </security>
      </trustInfo>
    </assembly>
    

    把它放在这里:

    【讨论】:

    • 能否解释一下您是如何使用 Launch4j 做到这一点的?非常感谢!
    • @Tom,我只会在周日上班,会做一些截图并更新我的答案。
    猜你喜欢
    • 2017-10-05
    • 2019-05-22
    • 2012-06-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多