community.borland.com

Article #25819: How to run gbak from within a non interactive service

Problem:
I have a non interactive service running, that collects data via ftp from 
another computer and INSERTs this into my database. 
Now I want to automatically do a backup/restore.  
I generated a batch file that does what I want. 
But if I call the batch with ShellExec gbak reports:

 gbak: ERROR: unavailable database

The batch job works fine, if called from the command line.  
However, I want it to run when users are not
logged in.


Solution:
You should be able to do this if you use the loopback remote access
method to access the database.  That is: 
localhost:D:datenppcdata_tr4ppc.gdb

The local access method uses a virtual window to communicate between
client (gbak) and server (ibserver).  Thus ibserver and any service that
interacts with it must interact with the desktop in order to use this
virtual window.

If you use the remote access method, the client doesn't use this virtual
window.

Source: Bill Karwin

Last Modified: 12-OCT-00