Atualizações HB 3.4 detecção Win10 e familia NT
Enviado: 22 Jul 2015 10:34
Já em conformidade com a nota técnica da MS.
https://msdn.microsoft.com/en-us/librar ... 25492.aspx
Saudações,
Itamar M. Lins Jr.
https://msdn.microsoft.com/en-us/librar ... 25492.aspx
This is because MS deprecated GetVersion*() functions, so they
would return false/emulated values on or above Win8 anyway.
Código: Selecionar todos
2015-07-22 12:23 UTC+0200 Viktor Szakats (vszakats users.noreply.github.com)
* src/common/hbver.c
! fix to previous modification (Win10 and new server detection)
+ refactor to not rely on GetVersion*() calls except for
detecting legacy Windows versions and build number and
service pack string on non-legacy Windows versions.
% do not try to detect Wine on WinCE
* contrib/hbwin/tests/os.prg
* contrib/hbwin/win_osc.c
* minor cleanups
2015-07-22 11:14 UTC+0200 Viktor Szakats (vszakats users.noreply.github.com)
* appveyor.yml
* temply enable OS version to test it
* src/common/hbver.c
* rework to use fewer deprecated GetVersion*() calls (2 to go)
+ recognize Win10, Server 2016, 8.1, Server 2012 R2 versions
* contrib/hbwin/win_osc.c
! update Win10 detection based final official docs
2015-07-22 10:30 UTC+0200 Viktor Szakats (vszakats users.noreply.github.com)
* src/common/hbver.c
! follow MSDN advice in:
https://msdn.microsoft.com/en-us/library/windows/desktop/ms725492.aspx
"If you are testing the major version, you must also test the
minor version and the service pack major and minor versions."
* replace ZeroMemory() with memset()
* contrib/hbwin/win_osc.c
* convert these functions to return emulated values with HB_LEGACY_LEVEL4:
- return .T. on all NT platforms: WIN_OSISNT351(), WIN_OSISNT4()
- return .T. on all Win9x platforms: WIN_OSIS95(), WIN_OSIS98(), WIN_OSISME()
- build number will be zero, service pack an empty string and
versions will be emulated: WIN_OSVERSIONINFO()
This is because MS deprecated GetVersion*() functions, so they
would return false/emulated values on or above Win8 anyway.
Itamar M. Lins Jr.