Delphi-PRAXiS
Seite 3 von 3     123   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Win & Dos Versions Nummern abfragen. (https://www.delphipraxis.net/195613-win-dos-versions-nummern-abfragen.html)

KodeZwerg 15. Mär 2018 13:16

AW: Win & Dos Versions Nummern abfragen.
 
Also mein Programm besitzt ein Manifest, aber nur für Theme aktivierung nicht um sich Rechte/Kompatibilitätsmodus anzufordern.
Ich weiß auch nicht wie ich per Code Abfragen kann in welchen Modus mein Programm gestartet wurde (Kompatibilitätsmodus, wenn ja, welcher?). Darüber muss ich mich erst Informieren.

günni0 15. Mär 2018 13:29

AW: Win & Dos Versions Nummern abfragen.
 
Zitat:

Ich weiß auch nicht wie ich per Code Abfragen kann in welchen Modus mein Programm gestartet wurde (Kompatibilitätsmodus, wenn ja, welcher?).
Das steht normalerweise in der Registry.

himitsu 15. Mär 2018 13:29

AW: Win & Dos Versions Nummern abfragen.
 
Es hat dein Programm eigentlich auch garnicht zu interessieren ob und in welchem Kompatibilitätsmodus es läuft.
Schon ganrnicht, um davon abhängig irgendwas Anders zu machen.

Stattdessen sollte man sein Programm für die bekannten Versionen kompatibel machen und sagt dann Windows welche Versionen es sind.
Genau das gehört dann ins Manifest.

Und standardmäßig bekommt man in diesen Versionen dann auch die richtige Versionsnummer angezeigt, sogar mit der regulären Versions-API.

KodeZwerg 15. Mär 2018 14:21

AW: Win & Dos Versions Nummern abfragen.
 
Code:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0" xmlns:asmv3="urn:schemas-microsoft-com:asm.v3">
  <assemblyIdentity processorArchitecture="*" version="5.1.0.0" type="win32" name="Microsoft.Windows.Themes"/>
  <dependency>
    <dependentAssembly>
      <assemblyIdentity type="win32" name="Microsoft.Windows.Common-Controls" version="6.0.0.0" publicKeyToken="6595b64144ccf1df" language="*" processorArchitecture="x86"/>
    </dependentAssembly>
  </dependency>
  <description>Activate native Themes support</description>
  <trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
    <security>
      <requestedPrivileges>
        <requestedExecutionLevel level="asInvoker" uiAccess="false"/>
      </requestedPrivileges>
    </security>
  </trustInfo>
 <compatibility xmlns="urn:schemas-microsoft-com:compatibility.v1">
  <application>
   <supportedOS Id="{8e0f7a12-bfb3-4fe8-b9a5-48fd50a15a9a}"></supportedOS>
   <supportedOS Id="{1f676c76-80e1-4239-95bb-83d0f6d0da78}"></supportedOS>
   <supportedOS Id="{4a2f28e3-53b9-4441-ba9c-d69d4a4a6e38}"></supportedOS>
   <supportedOS Id="{35138b9a-5d96-4fbd-8e2d-a2440225f93a}"></supportedOS>
   <supportedOS Id="{e2011457-1546-43c5-a5fe-008deee3d3f0}"></supportedOS>
  </application>
 </compatibility>
  <asmv3:application>
    <asmv3:windowsSettings xmlns="http://schemas.microsoft.com/SMI/2005/WindowsSettings">
      <dpiAware>true</dpiAware>
      <autoElevate>true</autoElevate>
    </asmv3:windowsSettings>
  </asmv3:application>
</assembly>
So in etwa sieht bei mir eine Manifest.xml aus wenn ich ein Programm erstelle das:
Themes sind aktiviert
Admin-Rechte einfordern
Verschiedenen Windows Versionen (ab Vista) mitteilen das es die mag, ist das damit gemeint? (supportedOS Id)
Oder ist es ein Befehl im Code der ausgeführt werden muss?
Zitat:

Stattdessen sollte man sein Programm für die bekannten Versionen kompatibel machen und sagt dann Windows welche Versionen es sind.


Alle Zeitangaben in WEZ +1. Es ist jetzt 12:04 Uhr.
Seite 3 von 3     123   

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz