checking version of client

Author: lalitpct@gmail.com (lalitpct)

We have Client/Server Architecture ..we have the client on 9.4.01 and we are changing some settings in .ini file.
I would like to change something on client side which i can capture in the code to check users have the new version (modified by us) or not.

Below are some ideas that I can think off
1)On client asn file i put below logical and retrieve it in the code ..
   [LOGICALS]
   appl_version =9.4.01verA
   The problem which i see here is that its a plain text and anyone who will have acess to that file can modify that and make it work.


2)we rename the folder of installation for
  eg suppose Client is installed at C:\Program Files\APPLICATION GUI 9.4 then when the appplication starts it starts in
  C:\Program Files\APPLICATION GUI 9.4\bin which we can scan in the code and figure it out by keeping the foldername as
  APPLICATION GUI 9.4verA
 
I think there should be some better way to put the version change on client software which can be captured by the code while running.

4 Comments

  1. What do you want to have:

    If you want to see the Uniface Version, then $about would be appropriate.

    Check which manipulated ini file is used? Then it should be something in the INI file (in 9.5 you can use $setting).

    On your argument about "plain text":

    if they have write access to ASN and INI, they can change anything they want (if they want to mess it up).

    So you have to trust your customers, haven't you?

    Uli

    P.S. Perhaps instead of manipulating INI files which come with the installation,
    write your own ones and use the command line switch /INI


    Author: ulrich-merkel (ulrichmerkel@web.de)

  2. Yeah we trust the client but just for learning point of view
    i was thinking of putting some compiled code on client side which will put the internal version name and later which can be read while runngin the code


    Author: lalitpct (lalitpct@gmail.com)
  3. for your "compiled code": Just create a DLL, deliver it with the same name for each version and use "perform" or "activate" to get the code.

    All you need is a compiler and a mini C program (uniface delivers some 3gl samples with the installation, I suppose).

    Uli


    Author: ulrich-merkel (ulrichmerkel@web.de)
  4. Is it the version of the .ini file that you want to check?
    Then you can simple look at the modification date and the size of the file.
    Or you can even do a filedump at each application startup to create a fresh .ini file.


    Author: Theo Neeskens (tneeskens@itblockz.nl)