public inbox for cygwin@cygwin.com
 help / color / mirror / Atom feed
From: Christian Franke <Christian.Franke@t-online.de>
To: cygwin@cygwin.com
Subject: Re: GetVersionEx() depreciated, what should be used instead for Windows 7/8/10?
Date: Tue, 19 Mar 2024 11:20:58 +0100	[thread overview]
Message-ID: <b47b7092-716a-c626-a14d-e5847bc86926@t-online.de> (raw)
In-Reply-To: <CALXu0UdrjFfhrBmBPNYepvMJ3hL7CPf1n6HEowxZgOxwdoy1TA@mail.gmail.com>

Cedric Blancher via Cygwin wrote:
> How does cygwin uname -s work, i.e. how does it get the OS version,
> revision and build number ('10.0-19045')?
> I tried to replicate it via GetVersionEx(), but that is deprecated.
>

AFAICS, MS does not offer an official way to retrieve the actual Windows 
version via the Win32 API layer. GetVersionEx() is unable to detect 
Windows versions which are more recent than the compatibility level 
advertised in the application manifest.

Cygwin uses the undocumented RtlGetNtVersionNumbers() from ntdll.dll 
because even RtlGetVersion() may not return the correct values. See 
function wincapc::init()
https://cygwin.com/git/?p=newlib-cygwin.git;a=blob;f=winsup/cygwin/wincap.cc

-- 
Regards,
Christian


  reply	other threads:[~2024-03-19 10:21 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-03-19  6:25 Cedric Blancher
2024-03-19 10:20 ` Christian Franke [this message]
2024-03-19 14:03   ` Bill Stewart
2024-03-19 15:00     ` Richard Campbell
2024-03-19 15:18       ` Bill Stewart
2024-03-19 16:20         ` Corinna Vinschen
2024-03-19 16:32           ` Bill Stewart
2024-03-20 11:39           ` Christian Franke
2024-03-20 14:26             ` Bill Stewart
2024-03-20 19:06             ` Corinna Vinschen
2024-03-21  8:58               ` Christian Franke
2024-03-21 15:15                 ` Corinna Vinschen
2024-03-22 22:13                   ` Ray Satiro
2024-03-23  9:37                     ` Corinna Vinschen
2024-03-23  9:57                   ` Christian Franke
2024-03-23 21:04                     ` Corinna Vinschen
2024-03-24 14:42                       ` Christian Franke
2024-03-24 21:05                         ` Corinna Vinschen

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=b47b7092-716a-c626-a14d-e5847bc86926@t-online.de \
    --to=christian.franke@t-online.de \
    --cc=cygwin@cygwin.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).