oleGridSort  - 	The OLE Automation server for sorting data in the MS Grid.
                Copyright (C) Timeamber Limited 1996
============================================================================

Introduction
------------
The oleGridSort server effectively sub-classes the Microsoft Visual Basic 
4.0 MS Grid control and adds new properties and methods as well as modifying 
some existing ones to give it full sorting by column capability.

Once sub-classed (see the NewGrid property topic in the Help file), all
properties and methods of the Grid should be accessed using the similar
properties and methods of the OLE server.

Event procedures for the Grid, however, will need to be accessed
normally as VB 4.0 does not allow the creation of custom events.

The supplied help file, SG.HLP, contains help for the properties and
methods that are new, or have been modified by this class. Refer to the
Help for the MS Grid control for standard properties and methods. SG.HLP can
be run standalone, or from the contex help button on the Object Browser in
VB 4.0's design environment.



Contents
--------
This OLE Automation server is supplied in three different forms:-

1. SG32.EXE		An Out-Of-Process server for 32-bit applications.
2. SG32.DLL		An In-Process server for 32-bit applications.
3. SG16.EXE		An Out-Of-Process server for 16-bit applications.

Both 32-bit and 16-bit servers require two supplied support files:-
SGSE32.DLL and LFUTIL32.DLL for the 32-bit servers.
SGSE16.DLL and LFUTIL16.DLL for the 16-bit server.

The supplied help file, SG.HLP is designed to be used in conjunction 
with the Object Browser available in the VB 4.0 design environment, or 
as a standalone means of reference. 
It should, therefore, be placed in a directory in the defined PATH, 
typically in the Windows directory.

Also supplied, but you should in fact have the file in your CD-ROM
TOOLS/PSS directory, is REGSVR32.EXE which you will need to register
SG32.DLL if running Windows 95/NT.


The Packing List
----------------
SGOLE.ZIP contains the following files:-

  SG32.ZIP          - which contains:-
    SG32.EXE        }
    SG32.DLL        } 32-bit stuff
    SGSE32.DLL      }
    LFUTIL32.DLL    }
    SGDEMO32.EXE    - small demo program.
    REGSRV32.EXE    - utility to register SG32.DLL.

  SG16.ZIP          - which contains:-
    SG16.EXE        }
    SGSE16.DLL      } 16-bit stuff
    LFUTIL16.DLL    }
    SGDEMO16.EXE    - small demo program.

  SG.HLP            - preferred help file, if it works in your version
                      of Windows.

  SGWIN3.HLP        - alternate Windows 3.xx version help file.
                      (Must be renamed to SG.HLP if used)

  PUBS.DAT          - data file for demo programs.

  WHATSNEW.TXT      - file depicting what's new in this version.

  LICENCE.TXT       - Development Licence Purchase form.

  README.TXT        - this file.



Installation
------------
You must have Visual Basic 4.0 installed to use this product.

1. Create a temporary directory on your PC.
2. Unzip SGOLE.ZIP into it.
3. Unzip SG32.ZIP and/or SG16.ZIP depending on your requirements.
4. Move the SG??.EXE file(s) and/or SG32.DLL into a suitable directory 
   (the VB 4.0 directory for example).
5. Move SGSE??.DLL and LFUTIL??.DLL into the windows\system directory.
6. Try running SG.HLP. If your version of Windows doesn't like it, rename 
   it, and rename SGWIN3.HLP to SG.HLP.
7. Move SG.HLP to your windows directory.
8. Copy SGDEMO??.EXE and PUBS.DAT into a directory
9. From File Manager/Explorer, run SG??.EXE to auto register it/them. If 
   you are going to use SG32.DLL, run REGSVR32.EXE thus:-

   e.g.    REGSVR32 C:\VB4\SG32.DLL

You should now be ready to use oleGridSort. To test if all is OK, run VB
4.0. Select the REFERENCES... option under the TOOLS menu. You should see 
one or more GridSort OLE Server entries.
You can now try out the demo program to see oleGridSort in action.



Implementation
--------------
Once registered, the servers will be available for all your VB 4.0
projects. To include one of the servers, in the VB 4.0 development
environment, click on the Tools|References menu option, scroll down the
list and you will see:-

GridSort OLE Server (32-bit) - for both SG32.EXE and SG32.DLL
              and/or
GridSort OLE Server (16-bit) - for SG16.EXE

Click on the checkbox of the one required, and it will now be accessible
to your project.

Refer to SG.HLP for detailed information on using oleGridSort.



Licencing oleGridSort
------------------------
You may use this product, for up to 30 days without licencing it, after
which, you must purchase a Development Licence or remove the files from 
your PC and/or network.

The cost of a single Development Licence is 19.95 (UK pounds). A single
Development Licence means that only one developer may use oleGridSort at any
time.

Please fill in the accompanying LICENCE.TXT file and send with your 
remittance to Timeamber Limited.

If you have a Compuserve ID, you can receive the licenced version via
Compuserve Mail. If you don't have a Compuserve ID, but want the licenced
version sent to your email address, it will need to be sent uuencoded. This
means that you will need to have some software that can uudecode the text.

Timeamber Limited does not yet accept credit cards.
Cheques/money orders must be in UK pounds, and must be drawn on a UK bank.

Licencing will ensure you receive free updates, and timely support.

Unlicenced versions will display a nag screen every time an instance of
the OLE server is invoked, when used in the VB 4.0 development 
environment.



Distribution
------------
IF oleGridSort IS UNLICENCED, NONE OF THE FILES MAY BE DISTRIBUTED AS PART
OF AN END USER APPLICATION! They may only be used to evaluate the product.

If the end user application is to run only under Windows 3.xx, the 
following files should be included in the distribution set:-
  SG16.EXE
  SGSE16.DLL
  LFUTIL16.DLL
  SGWIN3.HLP (for Windows 3.xx environment) - renamed to SG.HLP
                                              -----------------   

If the end user application is to run only with 16-bit applications in 
32-bit environments, the following files should be included in the 
distribution set:-
  SG32.EXE (out-of-proc server)
  SGSE32.DLL
  LFUTIL32.DLL.
  SG.HLP (the original)

If the end user application is 32-bit under Windows 95/NT, the 
following files should be included in the distribution set:-
  SG32.EXE (out-of-proc server) and/or SG32.DLL (in-proc server)
  SGSE32.DLL
  LFUTIL32.DLL.
  SG.HLP (the original)

If the run-time environment may be either or both, include all the above 
files. However, you will have to make some determination about which version
of the help file to distribute.

You may not distribute any of the supplied files, other than passing on
SGOLE.ZIP, unmodified, to other developers, if you have not licenced
the product.



Language Support
----------------
oleGridSort holds its error message texts as resources. Use a suitable 
resource editing utility to change the error message stringtable to suit
language requirements.

 

Limitations of oleGridSort
--------------------------
For reasons of performance, in relation to memory marshalling that OLE
automation is subject to, the Grid data is passed to the sort engine in 
one pass in a single text string. This imposes possibly severe 
limitations within the 16-bit version of VB 4.0 to 64Kb, as that is the 
maximum string length. This will restrict the maximum dimensions of the 
Grid to approximately 1024 rows x 8 columns x 8 characters per column, or 
appropriate variations thereof.

In the 32-bit version of VB 4.0, the maximum size of a string can be
approximately 2Gb, and so no such practical limitation exists.
   
 

Known problems
--------------
In the 16-bit version of oleGridSort, referring to any of an instance's 
properties/methods in the sub-classed Grid's SelChange event will cause 
a GPF (in module OLE2DISP.DLL) if setting any of the instance's 
properties elsewhere cause that event to fire. 
If you need to use this event procedure to access Grid properties, use 
the Grid name rather than the oleGridSort instance name.
Microsoft Technical Support are investigating this problem.



History
-------
1.0     First release.



If you experience any problems with this product, or have any questions 
about it, I'm contactable by one of the means below.


Ian Carter
Timeamber Limited
34 Park View
Kiveton Park
Sheffield S31 8SE
England

Tel/Fax (auto): (+44)(0)1909-773689
Mobile: 0468-520441
CIS: 100435,3040
Email: 100435.3040@compuserve.com







