2010-04-29 08:44 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)

* contrib/hbwin/win_osc.c
    + Added WIN_OSISWINXPORLATER(). Following Peter Rees in xhb.

  * contrib/xhb/Makefile
  + contrib/xhb/xwin_reg.c
  + contrib/xhb/xwin_ver.c
  * contrib/hbwin/Makefile
  - contrib/hbwin/legacycr.c
  - contrib/hbwin/legacycv.c
    ! Moved these legacy Windows functions to xhb lib from hbwin
      lib. This way we don't have to delete them after next
      release, plus they provide better compatibility as they are
      now also present in non-win builds (returning dummy values),
      just like in xhb.
    + Added OS_ISWINXP_OR_LATER() function.
This commit is contained in:
Viktor Szakats
2010-04-29 06:46:25 +00:00
parent 6f057ac0f9
commit df8fa6e078
6 changed files with 59 additions and 14 deletions

View File

@@ -17,6 +17,23 @@
past entries belonging to author(s): Viktor Szakats.
*/
2010-04-29 08:44 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* contrib/hbwin/win_osc.c
+ Added WIN_OSISWINXPORLATER(). Following Peter Rees in xhb.
* contrib/xhb/Makefile
+ contrib/xhb/xwin_reg.c
+ contrib/xhb/xwin_ver.c
* contrib/hbwin/Makefile
- contrib/hbwin/legacycr.c
- contrib/hbwin/legacycv.c
! Moved these legacy Windows functions to xhb lib from hbwin
lib. This way we don't have to delete them after next
release, plus they provide better compatibility as they are
now also present in non-win builds (returning dummy values),
just like in xhb.
+ Added OS_ISWINXP_OR_LATER() function.
2010-04-28 23:11 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* contrib/xhb/hbxml.c
! REVERTED: 2010-04-05 11:04 UTC+0200

View File

@@ -13,8 +13,6 @@ C_SOURCES := \
legacycd.c \
legacyco.c \
legacycp.c \
legacycr.c \
legacycv.c \
mapi.c \
olecore.c \
oleinit.c \

View File

@@ -103,6 +103,13 @@ HB_FUNC( WIN_OSISXP )
hb_retl( osvi.dwMajorVersion == 5 && osvi.dwMinorVersion == 1 );
}
HB_FUNC( WIN_OSISWINXPORUPPER )
{
OSVERSIONINFO osvi;
getwinver( &osvi );
hb_retl( osvi.dwMajorVersion > 5 || ( osvi.dwMajorVersion == 5 && osvi.dwMinorVersion >= 1 ) );
}
HB_FUNC( WIN_OSIS2003 )
{
OSVERSIONINFO osvi;

View File

@@ -38,6 +38,8 @@ C_SOURCES := \
xhbtrim.c \
xhbwith.c \
xstrdel.c \
xwin_reg.c \
xwin_ver.c \
C_HEADERS := \
hbcompat.h \

View File

@@ -52,14 +52,16 @@
#include "hbapi.h"
#if ! defined( HB_LEGACY_LEVEL3 ) && ! defined( HB_WIN_LEGACY_LEVEL_OFF )
#define HB_WIN_LEGACY_LEVEL_OFF
#endif
#if ! defined( HB_WIN_LEGACY_LEVEL_OFF )
#if defined( HB_OS_WIN )
HB_FUNC_EXTERN( WIN_REGQUERY ) ; HB_FUNC( QUERYREGISTRY ) { HB_FUNC_EXEC( WIN_REGQUERY ); }
HB_FUNC_EXTERN( WIN_REGGET ) ; HB_FUNC( GETREGISTRY ) { HB_FUNC_EXEC( WIN_REGGET ); }
HB_FUNC_EXTERN( WIN_REGSET ) ; HB_FUNC( SETREGISTRY ) { HB_FUNC_EXEC( WIN_REGSET ); }
#else
HB_FUNC( QUERYREGISTRY ) { hb_retl( HB_FALSE ); }
HB_FUNC( GETREGISTRY ) { hb_ret(); }
HB_FUNC( SETREGISTRY ) { hb_retl( HB_FALSE ); }
#endif

View File

@@ -4,7 +4,7 @@
/*
* Harbour Project source code:
* Compatibility calls (Printer support).
* Compatibility calls (OS version support).
*
* Copyright 2009 Viktor Szakats (harbour.01 syenar.hu)
* www - http://www.harbour-project.org
@@ -52,18 +52,16 @@
#include "hbapi.h"
#if ! defined( HB_LEGACY_LEVEL3 ) && ! defined( HB_WIN_LEGACY_LEVEL_OFF )
#define HB_WIN_LEGACY_LEVEL_OFF
#endif
#if ! defined( HB_WIN_LEGACY_LEVEL_OFF )
#if defined( HB_OS_WIN )
HB_FUNC_EXTERN( WIN_OSVERSIONINFO ) ; HB_FUNC( OS_VERSIONINFO ) { HB_FUNC_EXEC( WIN_OSVERSIONINFO ); }
HB_FUNC_EXTERN( WIN_OSISNT ) ; HB_FUNC( OS_ISWINNT ) { HB_FUNC_EXEC( WIN_OSISNT ); }
HB_FUNC_EXTERN( WIN_OSISNT351 ) ; HB_FUNC( OS_ISWINNT351 ) { HB_FUNC_EXEC( WIN_OSISNT351 ); }
HB_FUNC_EXTERN( WIN_OSISNT4 ) ; HB_FUNC( OS_ISWINNT4 ) { HB_FUNC_EXEC( WIN_OSISNT4 ); }
HB_FUNC_EXTERN( WIN_OSIS2000ORUPPER ) ; HB_FUNC( OS_ISWIN2000_OR_LATER ) { HB_FUNC_EXEC( WIN_OSIS2000ORUPPER ); }
HB_FUNC_EXTERN( WIN_OSIS2000 ) ; HB_FUNC( OS_ISWIN2000 ) { HB_FUNC_EXEC( WIN_OSIS2000 ); }
HB_FUNC_EXTERN( WIN_OSISXP ) ; HB_FUNC( OS_ISWINXP ) { HB_FUNC_EXEC( WIN_OSISXP ); }
HB_FUNC_EXTERN( WIN_OSISWINXPORUPPER ) ; HB_FUNC( OS_ISWINXP_OR_LATER ) { HB_FUNC_EXEC( WIN_OSISWINXPORUPPER ); }
HB_FUNC_EXTERN( WIN_OSIS2003 ) ; HB_FUNC( OS_ISWIN2003 ) { HB_FUNC_EXEC( WIN_OSIS2003 ); }
HB_FUNC_EXTERN( WIN_OSISVISTA ) ; HB_FUNC( OS_ISWINVISTA ) { HB_FUNC_EXEC( WIN_OSISVISTA ); }
HB_FUNC_EXTERN( WIN_OSISVISTAORUPPER ) ; HB_FUNC( OS_ISWINVISTA_OR_LATER ) { HB_FUNC_EXEC( WIN_OSISVISTAORUPPER ); }
@@ -73,8 +71,29 @@ HB_FUNC_EXTERN( WIN_OSIS95 ) ; HB_FUNC( OS_ISWIN95 ) { HB_
HB_FUNC_EXTERN( WIN_OSIS98 ) ; HB_FUNC( OS_ISWIN98 ) { HB_FUNC_EXEC( WIN_OSIS98 ); }
HB_FUNC_EXTERN( WIN_OSISME ) ; HB_FUNC( OS_ISWINME ) { HB_FUNC_EXEC( WIN_OSISME ); }
HB_FUNC_EXTERN( WIN_OSISTSCLIENT ) ; HB_FUNC( OS_ISWTSCLIENT ) { HB_FUNC_EXEC( WIN_OSISTSCLIENT ); }
HB_FUNC_EXTERN( WIN_OSVERSIONINFO ) ; HB_FUNC( OS_VERSIONINFO ) { HB_FUNC_EXEC( WIN_OSVERSIONINFO ); }
HB_FUNC_EXTERN( WIN_OSNETREGOK ) ; HB_FUNC( OS_NETREGOK ) { HB_FUNC_EXEC( WIN_OSNETREGOK ); }
HB_FUNC_EXTERN( WIN_OSNETVREDIROK ) ; HB_FUNC( OS_NETVREDIROK ) { HB_FUNC_EXEC( WIN_OSNETVREDIROK ); }
#else
HB_FUNC( OS_VERSIONINFO ) {}
HB_FUNC( OS_ISWINNT ) { hb_retl( HB_FALSE ); }
HB_FUNC( OS_ISWINNT351 ) { hb_retl( HB_FALSE ); }
HB_FUNC( OS_ISWINNT4 ) { hb_retl( HB_FALSE ); }
HB_FUNC( OS_ISWIN2000_OR_LATER ) { hb_retl( HB_FALSE ); }
HB_FUNC( OS_ISWIN2000 ) { hb_retl( HB_FALSE ); }
HB_FUNC( OS_ISWINXP ) { hb_retl( HB_FALSE ); }
HB_FUNC( OS_ISWINXP_OR_LATER ) { hb_retl( HB_FALSE ); }
HB_FUNC( OS_ISWIN2003 ) { hb_retl( HB_FALSE ); }
HB_FUNC( OS_ISWINVISTA ) { hb_retl( HB_FALSE ); }
HB_FUNC( OS_ISWINVISTA_OR_LATER ) { hb_retl( HB_FALSE ); }
HB_FUNC( OS_ISWIN7 ) { hb_retl( HB_FALSE ); }
HB_FUNC( OS_ISWIN9X ) { hb_retl( HB_FALSE ); }
HB_FUNC( OS_ISWIN95 ) { hb_retl( HB_FALSE ); }
HB_FUNC( OS_ISWIN98 ) { hb_retl( HB_FALSE ); }
HB_FUNC( OS_ISWINME ) { hb_retl( HB_FALSE ); }
HB_FUNC( OS_ISWTSCLIENT ) { hb_retl( HB_FALSE ); }
HB_FUNC( OS_NETREGOK ) { hb_retl( HB_FALSE ); }
HB_FUNC( OS_NETVREDIROK ) { hb_retl( HB_FALSE ); }
#endif