REFLEX 64-Bit-Windows: Unterschied zwischen den Versionen

Aus GEVITAS
Wechseln zu: Navigation, Suche
(Zugriff vom Client auf den Server =)
Zeile 37: Zeile 37:
 
Die Zugriffe sind in der Registry nach 32- und 64-Bit geteilt. Trägt ein 32-Bit-Programm etwas in die Registry (z.B. der ODBC-Admin), so steht das nur 32-Bit-Programmen zur Verfügung und umgekehrt!
 
Die Zugriffe sind in der Registry nach 32- und 64-Bit geteilt. Trägt ein 32-Bit-Programm etwas in die Registry (z.B. der ODBC-Admin), so steht das nur 32-Bit-Programmen zur Verfügung und umgekehrt!
  
== Zugriff vom Client auf den Server ===
+
== Zugriff vom Client auf den Server ==
 
Der Client kann natürlich sowohl in der 32-Bit- als auch in der 64-Bit-Version auf einen SQL-Server zugreifen, egal, welches Betriebssystem der Server hat!
 
Der Client kann natürlich sowohl in der 32-Bit- als auch in der 64-Bit-Version auf einen SQL-Server zugreifen, egal, welches Betriebssystem der Server hat!
  

Version vom 15. Oktober 2012, 15:40 Uhr

1 Einleitung

Die Windows-Versionen mit 64-Bit sind eigentlich eine tolle Sache! Denn darauf laufen nicht nur 64-Bit-Programme sondern auch die meisten 32-bit-Programme. Dafür hat Microsoft® Mechanismen eingebaut, die - ohne dass der Anwender davon etwas merkt – alle Zugriffe auf das Betriebssystem überwacht und ggf. auf spezielle 32-Bit-Bereiche umlenkt. Das gilt für die Registry und beispielsweise auch für System-Dateien, wie DLL’S und EXE.

Obwohl das Meiste für den normalen Anwender im Hintergrund läuft, muss man ein paar Punkte beachten, wenn man Programme von GEVITAS auf 64-Bit-Systemen einrichten will. Diese Dokumentation soll dazu Hilfe und Anregung geben.

Hinweis :Diese Dokumentation basiert auf den Erfahrungen, die mit den genannten Produkten gemacht wurden. Sie erhebt keinen Anspruch auf Vollständigkeit! Für die Richtigkeit und Anwendung der beschriebenen Funktionen wird keine Gewähr übernommen!

  Bitte beachten Sie folgende Punkte bei der Installation von GEVITAS-Programmen unter Windows 7:

  • Alle Installationen müssen über das Menü der rechten Maustaste „Als Administrator ausführen“ begonnen werden.
  • Auch die ODBC (Datenquellen) muss über dieses Menü geöffnet werden, wenn man den Eintrag für REFLEX erstellen oder bearbeiten möchte.
  • Achtung!
    • Unter Windows-64-Bit darf man nicht den ODBC-Administrator aus der Verwaltung benutzen! Hier befindet sich das richtige Programm dazu unter „C:\Windows\SysWOW64\ODBCAD32.exe“!!!

1.1 System-Dateien:

In einem 32-Bit-System gibt es einen Ordner "Windows\System32", in dem die Systemdateien liegen, sozusagen das Herzstück von Windows. In einem 64-Bit-System gibt es jedoch zwei Ordner für die Systemdateien, einen für die 64-Bit-Anwendungen und einen für die 32-Bit-Anwendungen. Bei einem Betriebssystemaufruf aus einem Programm heraus leitet Windows den Aufruf auf einen der beiden Ordner um. Das war die gute Nachricht! Die schlechte Nachricht: Die Namensgebung der System-Ordner unter 64-Bit-Windows ist verwirrend:

  • In "C:\Windows\System32" befinden sich alle 64-Bit-Programme! Der Ordner heißt nur so, weil Microsoft wohl kompatibel mit 32-Bit-Systemen bleiben wollte.
  • In "C:\Windows\SysWOW64" befinden sich alle 32-Bit-Programme, die über dem 64-Bit-Betriebssystem laufen! Der Ordner-Name kommt von "System-Windows-On-Windows-64-Bit"!

Beispiel: Wenn man ein 32-Bit-Programm (wie z.B. REFLEX oder GEVAS-Professional) unter Windows-64-Bit benutzt und einen ODBC-Datenquelle einrichten will, darf man nicht den ODBC-Administrator aus der Systemsteuerung/Verwaltung benutzen! Das ist nämlich "C:\Windows\System32\\ODBCAD32.exe", also die 64-Bit-Version! Das richtige Programm dazu befindet sich unter „C:\Windows\SysWOW64\ODBCAD32.exe“! Kleine Boshaftigkeit am Rande: Auch das 64-Bit-Programm heißt "ODBCAD32". Man höre und staune!

Interessant ist folgender Versuch: Legen Sie sich zwei Verknüpfungen auf den Desktop, eine für die 32-Bit-Version und eine für die 64-Bit-Version. Doppelklicken Sie auf die 32-Bit-Version, diese wird sich öffnen. Danach doppelklicken Sie auf die 64-Bit-Version. Interessanterweise öffnet sich nun nicht die 64-Bit-Version, sondern die 32-Bit-Version wird in den Vordergrund geholt. Obwohl es um zwei unterschiedliche Programme in unterschiedlichen Ordnern geht, hat Windows gemerkt, dass ein Programm dieses Namens schon geöffnet ist und öffnet die andere Version nicht. Anstelle dessen wird das Öffnen umgeleitet auf das schon geöffnete Programm, in diesem Fall die 32-Bit-Version.

1.2 Registry

Wie weiter unten beschrieben wird, sind die Zugriffe in der Registry nach 32- und 64-Bit geteilt. Trägt ein 32-Bit-Programm etwas in die Registry (z.B. der ODBC-Admin), so steht das nur 32-Bit-Programmen zur Verfügung und umgekehrt!

Um das Ganze noch etwas zu erschweren, teilen VISTA und Windows 7 die Registry auch noch nach Administratoren und Nicht-Administratoren auf…

Die Zugriffe sind in der Registry nach 32- und 64-Bit geteilt. Trägt ein 32-Bit-Programm etwas in die Registry (z.B. der ODBC-Admin), so steht das nur 32-Bit-Programmen zur Verfügung und umgekehrt!

2 Zugriff vom Client auf den Server

Der Client kann natürlich sowohl in der 32-Bit- als auch in der 64-Bit-Version auf einen SQL-Server zugreifen, egal, welches Betriebssystem der Server hat!

Der Grund liegt darin, dass der Client über das Netzwerk mit dem SQL-Server kommuniziert, meist mit dem Protokoll TCP. Also auch wenn man einen 64-Bit-Server hat, kann man mit 32-Bit-ODBC auf ihn zugreifen, auch innerhalb des Servers selbst!

2.1 Oracle

Derzeit (Oktober 2011) gibt es einen 64-Bit-Oracle-Client für Vista®, jedoch noch nicht für Windows 7®. Die Installation des Vista-Clients auf Windows 7 scheitert daran, dass das Setup-Programm die Betriebssystem-Version prüft. Da Windows 7 die Version 6.1 zurückliefert, wird die Installation verweigert. Mit Tricks kann man die Installation trotzdem erzwingen, der Treiber/Client funktionierte in unseren Test aber nicht einwandfrei!

Windows 7/64-Bit ist deshalb für GEVITAS-Anwendungen mit Oracle derzeit nicht zertifiziert!

Mit Windows 7-32-Bit funktionierte der Oracle-Client 10.2 übrigens ohne erkennbares Problem.

2.2 BDE

Die meisten GEVITAS-Programme verwenden die BDE (Borland Database Engine), um auf die Datenbank zuzugreifen. Die BDE ist ein 32-Bit-Programm. Unter Microsoft-SQL-Server und mySQL-Server wird außerdem die ODBC verwendet. ODBC ist ein Datenbanktreiber von Microsoft®. Die BDE ist dabei nur eine „Zwischenschicht“ vom Programm zur Datenbank.

Unter Oracle wird der „Oracle-Client“ verwendet. Dieser ist ein Datenbanktreiber von Oracle®. Die BDE ist auch hier nur eine „Zwischenschicht“ vom Programm zur Datenbank. Hinweis

  • Neuere Programme von GEVITAS (wie z.B. das Kassenbuch, Auftragsinfo usw.) benötigen keine BDE. Sie greifen über ADO.Net auf die Datenbank zu. Alle GEVITAS-Programme werden nach und nach auf ADO umgestellt!

Die BDE-Konfiguration greift auf die ODBC-Konfiguration zu, d.h. die ODBC-Einträge erscheinen auch in der BDE. Wie gesagt, die BDE ist ein 32-Bit-Programm. Wenn man also einen ODBC-Eintrag über die 64-Bit-Version macht erscheint diese nicht in der BDE.

2.3 Konfigurationsprogramm

Starten Sie das Konfigurationsprogramm immer als Administrator!

Als Administrator starten!