Subject | AW: [firebird-support] Manual firebird installation |
---|---|
Author | Steffen Heil |
Post date | 2004-09-05T19:10:01Z |
HI
completely transparent that the database was installed along with my
application. I develop and deploy on Win32 with Superserver.
So, use embedded server and you are fine. No need to setup the server, no
need for sysdba password mess, no need to start / stop the server, nothing.
No collisions with other firebird installations, no tcp/ip required at all,
no port problems.
It might even be a little faster, since no other connection can be involved
at all.
Right, that is what it is for. -a stands for application.
I assume, this is simply service mode. (Though the service is not correctly
initialized by the service control manager, no port is bound and nothing
will work.)
Right, see above.
I don't know in detail, how services work. But without -a, Firebird will NOT
start as application.
You could send a WM_CLOSE message to it's window, which is still a little
hard. There is no was to stop firebird.
Application mode was IMHO only developed to overcome the absence of real
services on windows 95/98/me. It is designed to start on windows startup and
shutdown on windows shutdown.
Embedded server is designed for what you need.
You should be able to use it in your applications, WITHOUT changing more
than one line of code. Simply replace the dll an use a suitable connection
string.
You could even give this as an option to your user, so that when more users
want to connect to the same database, they can still switch to super server.
(This is not possible with your use of super server, because shutting down
your application would stop firebird - killing all connections from other
users.)
Regards,
Steffen
> I want to use firebird as my database along with my application. The pointis that the end-user should not mess with the database, in fact it should be
completely transparent that the database was installed along with my
application. I develop and deploy on Win32 with Superserver.
So, use embedded server and you are fine. No need to setup the server, no
need for sysdba password mess, no need to start / stop the server, nothing.
No collisions with other firebird installations, no tcp/ip required at all,
no port problems.
It might even be a little faster, since no other connection can be involved
at all.
> 1. 'fbeserver -a' starts the server loading the tray icon control panelalso.
Right, that is what it is for. -a stands for application.
> I don't want that. I tried 'fbserver' without the -a switch. Looking inprocess list the fbserver.exe was there.
I assume, this is simply service mode. (Though the service is not correctly
initialized by the service control manager, no port is bound and nothing
will work.)
> Starting again 'fbserver' I saw 2 instances of fbserver.exe in processlist.
Right, see above.
> Why does the server start without complaining that the port is alreadybind?
I don't know in detail, how services work. But without -a, Firebird will NOT
start as application.
> How can I stop the fbserver instance when my application stops? The onlywai I found is by killing it mercilessly.
You could send a WM_CLOSE message to it's window, which is still a little
hard. There is no was to stop firebird.
Application mode was IMHO only developed to overcome the absence of real
services on windows 95/98/me. It is designed to start on windows startup and
shutdown on windows shutdown.
Embedded server is designed for what you need.
You should be able to use it in your applications, WITHOUT changing more
than one line of code. Simply replace the dll an use a suitable connection
string.
You could even give this as an option to your user, so that when more users
want to connect to the same database, they can still switch to super server.
(This is not possible with your use of super server, because shutting down
your application would stop firebird - killing all connections from other
users.)
Regards,
Steffen