Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Firebird auf Win7 Problem

78 views
Skip to first unread message

Andreas Kanthak

unread,
Nov 15, 2013, 3:16:46 AM11/15/13
to
Hallo zusammen,

ich habe ein Problem bei dem ihr mir vielleicht weiterhelfen könnt.
Meine Application ist schon sehr lange auf dem Markt und verwendet eine Firebird Datenbank.
Wenn ich die Software nun unter Windows 7 installiere, kann ich nicht auf die den DB Server und damit auch nicht auf meine DB
zugreifen. Das ganze unter WinXP installiert läuft ohne Probleme. Ich installiere unter beiden Systemen die gleichen Binaries.
Gibt es irgendwas zu beachten, wenn man Firebird auf WIn7 verwenden will?

Liebe Grüße
Andreas Kanthak


Andreas Kardin

unread,
Nov 15, 2013, 4:08:30 AM11/15/13
to
Andreas Kanthak wrote :

> [...] Wenn ich die Software nun unter Windows 7
> installiere, kann ich nicht auf die den DB Server und damit auch nicht
> auf meine DB zugreifen. Das ganze unter WinXP installiert läuft ohne
> Probleme. [...]

In welchen Ordnern befinden sich die Applikationen und die Binaries?

Achtung! Unter Windows 7 ist die Rechtevergabe in C:\Programme
restrikitiver und dann kommt noch seit Vista Microsofts Zauberei mit dem
VirtualStore hinzu. D.h. Schreibzugriffe auf das Applikationsverzeichnis
(unter C:\Programme\<DeineApp> werden in den VirtualStore umgelenkt und das
für jeden Benutzer. Das kann ziemliche Verwirrung nach sich ziehen, wenn
Prozesse (z.B. Services, DB-Treiber) unter verschiedenen Benutzerkontexten
auf Dateien in so einem Verzeichnis zugreifen. Die bekommen dann jeweils
nur Ihre virtuelle Version der Dateien zu Gesicht.

Vielleicht hilf Dir das.

Gruss

--
Andreas Kardin - Software Developer
- E-Mail : ma...@mephzara.com
- Web : www.mephzara.com

Andreas Kanthak

unread,
Nov 16, 2013, 6:37:11 AM11/16/13
to
Hallo Andreas,

>
> In welchen Ordnern befinden sich die Applikationen und die Binaries?
>

die App befindet sich in Programme(x32), die Daten und die DB im AppData-Verzeichnis (unter Win7 in ProgrammData). Aber wenn ich
alles
in C:\Test\ installiere funktioniert es auch nicht. Selbst IBExpert kann darauf nicht zugreifen, egal wo die DB ist. Nur ein drittes
Tool (ähnlich wie IBExpert, nur weiss ich den Namen gerade nicht mehr), kann ohne Probleme meine DB öffnen. Ich bin etwas ratlos.


Gruß
Andreas


Message has been deleted

Andreas Kanthak

unread,
Nov 16, 2013, 12:16:02 PM11/16/13
to
Hallo Martin,

> Was bedeutet "funktioniert es auch nicht"?

na ja, die Datenbankdatei kann nicht geöffnet werden.

> Eigenschaften/Kompatibilität ein Häkchen spendiert "Programm als ein
> Administrator ausführen". Ggf. kannst du da auch einen
> Kompatibilitätsmodus für Windows XP auswählen.

Alles schon probiert, bisher ohne Erfolg.

Gruß
Andreas


le...@delphi-tutorials.de

unread,
Nov 16, 2013, 2:47:15 PM11/16/13
to
Hallo,

Am Samstag, 16. November 2013 18:16:02 UTC+1 schrieb Andreas Kanthak:

> Alles schon probiert, bisher ohne Erfolg.
>

auch schon mal anstelle des "lokalen" Connectionstring einen Remote anzugeben:

localhost:<DBPfad>

Das sollte dann eigentlich funktionieren

Ulli Maier

unread,
Nov 17, 2013, 2:32:54 AM11/17/13
to
Hi Andreas,

bei mir war damals das Problem, dass FB unter Documents and
Settings\AllUsers\ApplicationData ein Verzeichnis angelegt hat, welches nur
ReadOnly-Rechte hat. Nachdem ich mich nicht mehr exakt erinnere, vielleicht
wurde dieses Verzeichnis auch gar nicht angelegt?
Wie auch immer: prüfen ob existent und mit passenden Rechten.

Admin-Rechte werden übrigens nicht benötigt. Allerdings muss der Account,
unter dem der DB-Service läuft, auf das o.g. Verzeichnis, das
FB-Prog-Verzeichnis und die DB schreibenden Zugriff haben.
Noch 'ne Idee: In der Alias.conf kann man sich auch selber aussperren.

Good luck!

Achim Kalwa

unread,
Nov 19, 2013, 5:13:27 AM11/19/13
to
Hallo Andreas,

>> Was bedeutet "funktioniert es auch nicht"?
>
> na ja, die Datenbankdatei kann nicht geöffnet werden.

Die genaue Fehlermeldung wäre hilfreich!

Meine Vermutung:
Du verwendest das "local"-Protokoll für den Zugriff auf die Datenbank,
also einfach nur den Pfad zur lokalen Datenbank als Connect-String:
'C:\ProgramData\Meine\Datenbank.fbd'.

Das funktioniert seit Windows Vista nicht mehr, weil Microsoft den
Diensten die Fähigkeit zur Interaktion mit Desktop-Anwendung abgeschalet
hat. Das bedeutet: Dienste (hier: Firebird) können nicht mehr direkt mit
einer Anwendung kommunizieren.

Ab Windows Vista kann die Kommunikation mit dem Firebird-Server nur noch
über eines der Netzwerk-Protokolle erfolgen, selbst dann wenn Anwendung
und Firebird-Datenbank auf dem selben Rechner liegen.

Ändere Deinen Connect-String in
'localhost:C:\ProgramData\Meine\Datenbank.fdb'

Durch diese Syntax wird das TCP/IP-Protokoll verwendet. Damit
funktioniert der Zugriff auf die Firebird-Datenbank sowohl unter Windows
XP als auch unter Vista, 7 und 8.

Falls das wider erwarten nicht funktioniert:
Bitte die genaue Fehlermeldung posten!

HTH
Achim







Andreas Kanthak

unread,
Nov 22, 2013, 5:56:36 AM11/22/13
to
Hallo Achim und alle, die mir geantwortet haben.

ich hatte als als Verbindung bisher folgende Connect-String:

Params.Add('USER NAME=SYSDBA');
Params.Add('PASSWORD=masterkey');
Params.Add('CHARACTER SET=ASCII');
Params.Add('SQL DIALECT=3');
Params.Add('PAGE SIZE=4096');
Params.Add('PATH=' + GetEventSource);
Params.Add('PROTOCOL=TCP/IP');
Params.Add('SERVER=localhost')

Dies funktionierte nicht auf Win7.
ich habe das jetzt wie folgt ge�ndert:

Params.Add('USER NAME=SYSDBA');
Params.Add('PASSWORD=masterkey');
Params.Add('CHARACTER SET=ASCII');
Params.Add('SQL DIALECT=3');
Params.Add('PAGE SIZE=4096');
Params.Add('PATH=' + GetEventSource);
Params.Add('PROTOCOL=LOCAL');
Params.Add('SERVER=').

In der Firebird.conf musste ich noch den Parameter IPCName aktivieren und mit Global\ prefixen. Nun funktioniert es auf Win7
tadellos.
Auch auf XP funktioniert es weiterhin ohne Probleme.
Danke f�r eure Tips und Hinweise.

Liebe Gr��e
Andreas
>
>
>
>


0 new messages