home *** CD-ROM | disk | FTP | other *** search
/ ftp.alaska-software.com / 2014.06.ftp.alaska-software.com.tar / ftp.alaska-software.com / acsn / scope.txt < prev    next >
Text File  |  2000-01-02  |  3KB  |  68 lines

  1.                                                         06/12/98
  2.  
  3.               READ.ME for SCOPE implementation
  4.               ********************************
  5.  
  6.  
  7. This package includes the following files:
  8. ******************************************
  9.  
  10.         read.me         you are just reading it
  11.         test.prg        small test program to show the functionality
  12.         scope.ch        just for the translation for usage of COMMANDs
  13.         makefile.mak    for the usage of NMAKE (make utility)
  14.         scope.def       this is the tricky file (do not delete it)
  15.         scope.prg       this is the SCOPE <g>
  16.         makedll.bat     for all of you who do not have NMAKE
  17.         project.xpj     project file for the sample
  18.         test.dbf        sample table
  19.         cl.bat          MAKE batch for Clipper/Comix version
  20.  
  21.  
  22.  
  23. What leaves to tell?
  24. ********************
  25.  
  26. 1. to build the project, please run
  27.         MakeDLL
  28.    or
  29.         nMake -f makefile.mak
  30.    first and then
  31.         PBuild
  32.    You should have a TEST.EXE then!
  33.  
  34. 2. you can run TEST.EXE with or without a parameter:
  35.         TEST            starts the app with NTX DBE
  36.         TEST CDX        runs the app with CDX DBE; the Clipper app will
  37.                         run as CDX version anyway
  38.  
  39. 3. if you try to run the app against the Clipper app, you need to
  40.    make sure that the Clipper app built the CDX !!!
  41.  
  42. 4. why does it work, but I did not change any code of my app, just
  43.    linked a LIB?
  44.  
  45.    Have a look in SCOPE.DEF file. This shows a way, how you can
  46.    overload every Xbase++ function, which means you do replace the
  47.    origianal function of the Xbase++ runtime, just redirect the call
  48.    to the replacement and there you can even use the original call.
  49.    This works with eg. with the function Version()
  50.  
  51.         VERSION      = _VERSION
  52.  
  53.    which results in the function _Version() of the DLL first
  54.    even when you call Version() in your app (Version() is mapped to
  55.    _Version() in your DLL; just call the app in the debugger to see
  56.    what is happening exactly).
  57.  
  58.    VERY IMPORTANT NOTE: explaining and showing this feature to you
  59.                         makes support of Xbase++ very difficult. So,
  60.                         please do overload Version() when you use
  61.                         this feature!!! Otherwise we can't do a good
  62.                         support, because you overloaded a
  63.                         functionality. THANKS!
  64.  
  65. Have fun with it,
  66.  
  67. Frank++
  68. ALASKA TechSupport