UAC Windows 7 i podpisywanie manifestów

0

W Windows Vista, wystarczyło dodać specjalny manifest do EXE i jako tako UAC pytało się o zgodę użytkownika na podwyższenie uprawnień.

Podobno w Windows 7 musi to być już PODPISANY CYFROWO manifest, a to oznacza płacenie za podpis, co jest bez sensu... zwłaszcza, że podpis to min. 500zł na rok !

Jak sprawy z UAC/Manifestem w Windows 7 zmieniły się w stosunku do Visty ?
Czy znowu czeka Nas przebudowa aplikacji ?

0

Wrzuć w google 'windows 7 application manifest' i przejrzyj pierwszy wynik...

0

Aha, troszkę się zmieniło...

W Windows 7 jest tak:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>

  <assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">

    <compatibility xmlns="urn:schemas-microsoft-com:compatibility.v1">

      <application>

        <!--The ID below indicates application support for Windows Vista -->

          <supportedOS Id="{e2011457-1546-43c5-a5fe-008deee3d3f0}"/>

        <!--The ID below indicates application support for Windows 7 -->

          <supportedOS Id="{35138b9a-5d96-4fbd-8e2d-a2440225f93a}"/>

      </application>

    </compatibility>

  </assembly>

SupportedOS: GUID of supported operating system - The GUIDs that map to the supported operating systems are:

* {e2011457-1546-43c5-a5fe-008deee3d3f0} for Windows Vista: This is the default value for the switchback context.
* {35138b9a-5d96-4fbd-8e2d-a2440225f93a} for Windows 7: Applications that set this value in the application manifest get the Windows 7 behavior.

Microsoft will generate and post GUIDs for future Windows versions as needed.

Natomiast zmodyfikowany manifest dla XP i Visty (tak aby UAC pytało w Viście, ale jednocześnie style XP poprawnie były odczytywane)

<?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="*"
       name="UACAwareApplication"
       type="win32"/>
    <trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
        <security>
            <requestedPrivileges>
                <requestedExecutionLevel level="requireAdministrator"/>
            </requestedPrivileges>
        </security>
    </trustInfo>
    <description>Moja Firma</description>
    <dependency>
        <dependentAssembly>
            <assemblyIdentity
                type="win32"
                name="Microsoft.Windows.Common-Controls"
                version="6.0.0.0"
                processorArchitecture="X86"
                publicKeyToken="6595b64144ccf1df"
                language="*"
            />
        </dependentAssembly>
    </dependency>
</assembly>

Teraz trzeba to jakoś złożyć w całość.

1 użytkowników online, w tym zalogowanych: 0, gości: 1