Subject | Re: [firebird-support] Trouble with Windows 7: Installing and starting SuperServer 2.1.3 from ZIP package |
---|---|
Author | Matthias Hanft |
Post date | 2009-12-31T16:39Z |
Alan McDonald wrote:
"Program" and "Files" in "C:\Program Files" - I'm not used to that (here in
Germany, it reads "C:\Programme").
The long version:
1. The programs instreg/instsvc/instclient didn't run. Windows 7 always told
me "Invalid directory name" when I tried to start
"C:\Program Files\Firebird\Firebird_2_1\bin\instreg" install
by calling CreateProcess. Obviously, this was a perfect path (and could be
run manually from the "cmd" command line), but I found that the "working
directory" which I specified by Delphi's "ExtractFileDir" function was
"C:\Program Files\Firebird\Firebird_2_1\bin
(without the closing "), and _this_ was the "invalid directory name" which
Windows was complaining about. Setting it to nil/NULL solved this issue.
2. The server didn't start yet, no matter if I tried "public" or "private"
installation of the VS runtime packages. First, I had no idea at all to
find the reason for this, but then I tried "fbserver -a" for running FB
as an application, and it told me that the file
"C:\Program Files\Firebird\Firebird_2_1\"\firebird.conf
could not be found. Yippee! This pointed even _two_ errors out to me:
2.a) I had just forgotten to include the files in the FB "main directory"
in my InstallShield package - bin, doc, help... everything was there,
but not aliases.conf, firebird.conf etc. - and even security2.fdb :-)
2.b) The crippled path name came from a FIREBIRD environment variable which
I had put in ". Either I have to omit the ", or just delete it completely
- it's the standard path anyway.
Just one thing remains: If you start "fbserver -a" for the first time on a "clean"
Windows 7 system, it starts to listen on port 3050, and Windows immediately asks
if you would allow FB to get through the Windows firewall. Installing and
running as a service doesn't ask anything at all (and, hence, the FB server
cannot be reached from another computer's client, even if located in the same
subnet).
Seems I have to do that manually by calling the firewall's methods (something
like fwMgr=CreateObject("HNetCfg.FwMgr") and so on) - or is there already a
FB tool to achieve this?
Happy new year!
-Matt
[Non-text portions of this message have been removed]
>Seems to work now. Nearly everything had to do with the empty space between
> The full install of Firebird server runs this very same MSI as part of the
> install. If you choose to install from ZIp then it's up to you to make it
> work.
"Program" and "Files" in "C:\Program Files" - I'm not used to that (here in
Germany, it reads "C:\Programme").
The long version:
1. The programs instreg/instsvc/instclient didn't run. Windows 7 always told
me "Invalid directory name" when I tried to start
"C:\Program Files\Firebird\Firebird_2_1\bin\instreg" install
by calling CreateProcess. Obviously, this was a perfect path (and could be
run manually from the "cmd" command line), but I found that the "working
directory" which I specified by Delphi's "ExtractFileDir" function was
"C:\Program Files\Firebird\Firebird_2_1\bin
(without the closing "), and _this_ was the "invalid directory name" which
Windows was complaining about. Setting it to nil/NULL solved this issue.
2. The server didn't start yet, no matter if I tried "public" or "private"
installation of the VS runtime packages. First, I had no idea at all to
find the reason for this, but then I tried "fbserver -a" for running FB
as an application, and it told me that the file
"C:\Program Files\Firebird\Firebird_2_1\"\firebird.conf
could not be found. Yippee! This pointed even _two_ errors out to me:
2.a) I had just forgotten to include the files in the FB "main directory"
in my InstallShield package - bin, doc, help... everything was there,
but not aliases.conf, firebird.conf etc. - and even security2.fdb :-)
2.b) The crippled path name came from a FIREBIRD environment variable which
I had put in ". Either I have to omit the ", or just delete it completely
- it's the standard path anyway.
Just one thing remains: If you start "fbserver -a" for the first time on a "clean"
Windows 7 system, it starts to listen on port 3050, and Windows immediately asks
if you would allow FB to get through the Windows firewall. Installing and
running as a service doesn't ask anything at all (and, hence, the FB server
cannot be reached from another computer's client, even if located in the same
subnet).
Seems I have to do that manually by calling the firewall's methods (something
like fwMgr=CreateObject("HNetCfg.FwMgr") and so on) - or is there already a
FB tool to achieve this?
Happy new year!
-Matt
[Non-text portions of this message have been removed]