Download

Here you can download simple freeware command-line utility that will allow moving multi-file databases to new location without requiring doing it via backup/restore.
Files comprising multi-file database are chained such that each header page contains link to next file. This utility changes that link - it does not move or rename the file itself. Of course you should not use it on opened database (for this reason it requires exclusive access to the file it changes).
New filename/path is not restricted in length - it can be shorter or longer than original filename. No validity checking of the new path is done (so you can change the links before you actually rename/move the files), but you should always use fully qualified filename.

GLINK.EXE (70KB, Win32, ver. 0.4)
GLINK source code

Tested with IB4.1, IB5.6, IB6.0 on Windows platform (with free Borland C++ Compiler 5.5).
Because it is simple C program, it should work on other platforms too.


Example:
After renaming and moving 3-file database (D:\db.gdb, E:\db.gd2, F:\db.gd3) to new location (X:\DB\mydb.gdb, Y:\DB\mydb.gd2, Z:\DB\mydb.gd3), execute these commands
GLINK X:\DB\mydb.gdb Y:\DB\mydb.gd2
GLINK Y:\DB\mydb.gd2 Z:\DB\mydb.gd3
or, before moving files, you can execute this
GLINK D:\db.gdb Y:\DB\mydb.gd2
GLINK E:\db.gd2 Z:\DB\mydb.gd3
You can also show next file in chain, or full header, by these commands
GLINK    X:\DB\mydb.gdb
GLINK -h X:\DB\mydb.gdb

Ivan Prenosil (2002)