QT3 and opening ISAM-files?

  • Hello,
    I'm in charge of an older application which uses the QT3 framework. Since this application creates ISAM-files it could be possible that a QT3 "database"-driver for these ISAM-files was used. Does anybody know if such a driver was available in the end of the 90's?
    Or are there any ISAM-drivers for QT available at all?

    Any help will be appreciated!

  • Lifetime Qt Champion


    IIRC database wise, MySQL can use ISAM. It might that that was used.

    Hope it helps

  • Hi,
    as a matter of fact mySQL doesn't recognize the given ISAM format.
    But thanks for that hint anyway.

  • Lifetime Qt Champion

    Then the file might have been generated by other means (BerkleyDB etc…)

    Can you check the dependencies of that application e.g. using Dependency Walker on windows, or ldd on unix.

    By the way, do you have access to the application's source code ?

  • Since ISAM is just a definition of how data can be stored there are several kinds of ISAM (C-ISAM, D-ISAM, BTRIEVE-ISAM, etc.). The concept of storing the data - one file for the data, one file for the index and often one file for the structure/metadata - is the common thing they share.
    The files get created under windows - therefore I guess that BerkleyDB is not the underlying database system. And there are just the ISAM files - there is no database server.
    No, we don't have access to the sourcecode of the application.
    I have heard about Dependency Walker - but I don't understand how this tool could be helpful in our case. I'm not that deep into Windows administration. But I glad about any help I can get :-)

  • Lifetime Qt Champion


    Looking at the dependencies of that application you could maybe find if there's a perhaps unusual library that could have been used to generate these files that so you could re-use it to parse/generate them

  • JUst in case that I might find such a DLL - how can I use this DLL? I guess I could link or bind it somehow - but how can I figure out which "methods" (e.g. OpenIsamFile, ReadIsamFile, ...) are covered in this DLL?
    What I know is that QT was used a framework to develop the application in C++.

  • Ok, when using DependencyWalker I can see all functions. These are the ones of the export table of a dll. The next hurdle is to get the import parameters of such a function. And of course the return values as well.

  • Lifetime Qt Champion

    If you have the functions name you should be able to find the library that provides them and then some documentation

  • I've found an awful lot of functions - with no documentation at all. THat makes it eaven harder to use them.
    But I still wonder if ther are any drivers, code-snippets etc. from the QT framework which are especially for opening ISAM-files.

  • Lifetime Qt Champion

    AFAIK there isn't, the only thing I can see that could have done that are the database part but the server must have been configured to use ISAM

  • ISAM in our case is not a database in the commons sense - meaning that there's no database server at all. It's just flat files. Maybe there exist some methods/drivers which have been written in the past? The application was developed in the beginning of the 90's. When I was googling around the other day I thought that I have read something about QT and ISAM. I will spend some time to find it again.
    Thanks for your reply anyway.

  • Lifetime Qt Champion

    Then it's probably an external library or something custom wrote especially for the application.

Log in to reply

Looks like your connection to Qt Forum was lost, please wait while we try to reconnect.