Delphi-PRAXiS
Seite 3 von 5     123 45      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Info-Fenster von Windows anzeigen (https://www.delphipraxis.net/186236-info-fenster-von-windows-anzeigen.html)

DeddyH 18. Aug 2015 08:41

AW: Info-Fenster von Windows anzeigen
 
Aber auch dann muss man die richtigen Parametertypen verwenden.

Sir Rufo 18. Aug 2015 08:59

AW: Info-Fenster von Windows anzeigen
 
Zitat:

Zitat von DeddyH (Beitrag 1312532)
Aber auch dann muss man die richtigen Parametertypen verwenden.

Ja, immer den richtigen, je nachdem welche Version ich brauche:
  • Das was die Entwicklungsumgebung kann:
    Delphi-Quellcode:
    GetFileVersionInfoSize
    -> nimm
    Delphi-Quellcode:
    PChar
  • Ich will UNICODE:
    Delphi-Quellcode:
    GetFileVersionInfoSizeW
    -> nimm
    Delphi-Quellcode:
    PWideChar
  • Ich will ANSI:
    Delphi-Quellcode:
    GetFileVersionInfoSizeA
    -> nimm
    Delphi-Quellcode:
    PAnsiChar
Update
Genau das steht auch in der MSDN-Doku zum Datentyp LPCTSTR
Zitat:

LPCTSTR

An LPCWSTR if UNICODE is defined, an LPCSTR otherwise. For more information, see Windows Data Types for Strings.

This type is declared in WinNT.h as follows:
Code:
#ifdef UNICODE
 typedef LPCWSTR LPCTSTR;
#else
 typedef LPCSTR LPCTSTR;
#endif

Somit ist also
Delphi-Quellcode:
type
  LPCTSTR = PChar;
  LPCSTR = PAnsiChar;
  LPCWSTR = PWideChar;

DeddyH 18. Aug 2015 09:08

AW: Info-Fenster von Windows anzeigen
 
Das ist doch exakt das, was ich vorher gesagt habe und was als Quatsch abgetan wurde, weil die IDE im Hint ja den Ursprungstypen anzeigt. Wir drehen uns im Kreis.

Sir Rufo 18. Aug 2015 09:12

AW: Info-Fenster von Windows anzeigen
 
Zitat:

Zitat von DeddyH (Beitrag 1312539)
Das ist doch exakt das, was ich vorher gesagt habe und was als Quatsch abgetan wurde, weil die IDE im Hint ja den Ursprungstypen anzeigt. Wir drehen uns im Kreis.

Du sagst, mann muss bei den Delphi-Versionen aufpassen, und wir sagen, das ist Quatsch, wenn man es richtig definiert hat, dann definiert sich das durch die Verwendung von
Delphi-Quellcode:
PChar
und
Delphi-Quellcode:
GetFileVersionSize
von ganz alleine.

DeddyH 18. Aug 2015 09:14

AW: Info-Fenster von Windows anzeigen
 
Zitat:

Zitat von Sir Rufo (Beitrag 1312540)
Du sagst, mann muss bei den Delphi-Versionen aufpassen, ...

Wo soll ich das denn gesagt haben?

Sir Rufo 18. Aug 2015 09:22

AW: Info-Fenster von Windows anzeigen
 
Zitat:

Zitat von DeddyH (Beitrag 1312541)
Zitat:

Zitat von Sir Rufo (Beitrag 1312540)
Du sagst, mann muss bei den Delphi-Versionen aufpassen, ...

Wo soll ich das denn gesagt haben?

Uppps, ich glaube ich habe da den Kontext deiner Beanstandung verwechselt. Du hast dich wohl auf den Beitrag
Zitat:

Zitat von hathor (Beitrag 1312372)
Parameter von WINVER.exe gibt es bis WIN8.1 nicht.

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var strParams,FN : String;
begin                                         // uses Winapi.ShellAPI
 strParams:= ''; // für Programme MIT Parameter
 FN:='winver.exe';
ShellExecute(Application.Handle,NIL,PWChar(FN), PWChar(strParams),NIL, SW_Normal);
end;

bezogen, und das ist definitiv falsch, womit du natürlich recht hast.
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var strParams,FN : String;
begin                                         // uses Winapi.ShellAPI
 strParams:= ''; // für Programme MIT Parameter
 FN:='winver.exe';
ShellExecute( Application.Handle, NIL, {PWChar ist hier FALSCH}PChar(FN), {PWChar}PChar(strParams), NIL, SW_Normal );
end;

DeddyH 18. Aug 2015 09:24

AW: Info-Fenster von Windows anzeigen
 
Jetzt sind wir uns endlich einig :thumb:. Der Hinweis mit der Delphi-Version bezog sich auf den Screenshot.

hathor 18. Aug 2015 09:36

AW: Info-Fenster von Windows anzeigen
 
Was ist das hier eigentlich?
Eine Hetzjagd?
SCHEISSGELABER !!!
Gibt es hier keinen Moderator, der den ganzen Scheiss mal rauswirft???!!!

Sir Rufo 18. Aug 2015 09:44

AW: Info-Fenster von Windows anzeigen
 
Also uns geht es um die Fakten und die sachliche Richtigkeit.

Worum geht es dir? Ruhm, Ehre, Anerkennung, ... :gruebel:

Willie1 18. Aug 2015 12:03

AW: Info-Fenster von Windows anzeigen
 
Hallo Leute,
der Ausgangspunkt meiner Frage war, eine About-Box für meine eigenen Programme. In dieser zeige ich zusätzlich meine eigene Ikone, die Windows-Version und die Größe des Arbeitsspeichers.
Ab Windows 8.1 lässt die Version nicht mehr mit GetWindowsVersion und seit W 10 auch nicht mehr über die Registry abfragen.
Meine Idee war ein Button auf der About-Box, mit der sich das Windows-Info Fenster öffnen lässt. (Bei Vista wird hier auch der Arbeitsspeicher angezeigt, nicht bei W 10).
Da kam mir Helmis Vorschlag mit ShellAbout gerade recht: About-Box Und Windows-Info zusammen! Ich stelle aber fest, dass Win 10 den individuellen Kopftext ignoriert und die
falsche Windows Version 6.2 9200 anzeigt. Wenn ich die Lösung von Hathor nehme, wird dagegen die richtige Version 10.0.10240 angezeigt.
Ihr könnt es ausprobieren.
Willie.


Alle Zeitangaben in WEZ +1. Es ist jetzt 05:43 Uhr.
Seite 3 von 5     123 45      

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