Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   ODBC zu Access via Batch-Datei erstellen (https://www.delphipraxis.net/174695-odbc-zu-access-via-batch-datei-erstellen.html)

Ykcim 6. Mai 2013 11:37

ODBC zu Access via Batch-Datei erstellen
 
Hallo Zusammen,

ich benötige für meine Software eine ODBC-Verbindung zu einer AccessDB. Da ich aber nicht bei jedem Benutzer das von Hand einrichten möchte, wöchte ich, dass meine Software beim Start prüft, ob die Verbindung bereits besteht.
Und das ist die erste Frage: Wie kann ich prüfen, ob die ODBC-Verbindung Oberflaechen1 schon exitsiert?

Wenn sie nicht existiert, dann möchte ich eine Batch-Datei ausführen lassen, welche die ODBC-Verbindung anlegt.
Und das ist die zweite Frage: Ich habe die Batch-Datei wie folgt aufgebaut:
Delphi-Quellcode:
@echo off
 reg add HKCU\SOFTWARE\ODBC\ODBC.INI\Oberflaechen1 /v DBQ /t REG_SZ /d "H:\Oberflächen\Oberflächenschlüssel.mdb" /f
 reg add HKCU\SOFTWARE\ODBC\ODBC.INI\Oberflaechen1 /v Description /t REG_SZ /d "Oberflächenschlüssel AL" /f
 reg add HKCU\SOFTWARE\ODBC\ODBC.INI\Oberflaechen1 /v Driver /t REG_SZ /d "C:\WINDOWS\system32\odbcjt32.dll" /f
 reg add HKCU\SOFTWARE\ODBC\ODBC.INI\Oberflaechen1 /v FIL /t REG_SZ /d "MS Access" /f
 reg add HKCU\SOFTWARE\ODBC\ODBC.INI\Oberflaechen1 /v PWD /t REG_SZ /d "" /f
 reg add HKCU\SOFTWARE\ODBC\ODBC.INI\Oberflaechen1 /v UID /t REG_SZ /d "" /f
 reg add HKCU\SOFTWARE\ODBC\ODBC.INI\ODBC Data Sources /v Oberflaechen1 /t REG_SZ /d "Microsoft Access Driver (*.mdb)" /f
Ich bekomme bei der letzten Zeile einen Fehler angezeigt. Kann mir jemand erklären warum. Ich begebe mich gerade auf Neuland...

Vielen Dank
Patrick

p80286 6. Mai 2013 11:50

AW: ODBC zu Access via Batch-Datei erstellen
 
Zu Deiner ersten Frage:
Schau doch in der Registry nach

Zu Deiner zweiten Frage:
überprüf einmal die Anzahl der " in der letzten Zeile.

Sind auch die entsporechenden "ODBC Data Sources" eingetragen?

Gruß
K-H

Ykcim 6. Mai 2013 13:17

AW: ODBC zu Access via Batch-Datei erstellen
 
Hallo,

vielen Dank für die Antwort.

Zu 1) Ich möchte gerne, dass mein Programm ich der Registry nachsieht, habe aber keine Idee, wie ich das anstellen muss.

Zu 2) Genau bei diesem Eintrag macht er Probleme. Daher lautet die Antwort NEIN! Aber ich weiß auch leider nicht, wie ich den Eintrag in die "ODBC Data Sources" hinbekomme. Die Anzahl der " sollte stimmen...

Vielen Dank
Patrick

baumina 6. Mai 2013 13:45

AW: ODBC zu Access via Batch-Datei erstellen
 
evtl.

reg add HKCU\SOFTWARE\ODBC\ODBC.INI\ODBC Data Sources /v Oberflaechen1 /t REG_SZ /d "Microsoft Access Driver (*.mdb)" /f

ändern in

reg add "HKCU\SOFTWARE\ODBC\ODBC.INI\ODBC Data Sources" /v Oberflaechen1 /t REG_SZ /d "Microsoft Access Driver (*.mdb)" /f

Bernhard Geyer 6. Mai 2013 13:52

AW: ODBC zu Access via Batch-Datei erstellen
 
Mit der Klasse TRegistry kann du sowohl nachsehen was überhaupt schon in der Registry steht als auch deine eigenen Einträge erstellen.
Das Arbeiten mit Batch-Datei halte ich hier für zu fehleranfällig.

Besser ist es natürlich gleich die dafür vorgesehene API zu verwenden.

sx2008 6. Mai 2013 14:10

AW: ODBC zu Access via Batch-Datei erstellen
 
Wenn du ADO-Komponenten verwenden würdest, dann bräuchtest du keine ODBC-Verbindung und könntest dir die Änderungen in der Registry sparen.
Wie wär's damit?

baumina 6. Mai 2013 14:13

AW: ODBC zu Access via Batch-Datei erstellen
 
Zitat:

Wenn du ADO-Komponenten verwenden würdest, dann bräuchtest du keine ODBC-Verbindung und könntest dir die Änderungen in der Registry sparen.
Wie wär's damit?
Delphi XE2 Starter wird das nicht haben, denke ich mal.

Bernhard Geyer 6. Mai 2013 14:43

AW: ODBC zu Access via Batch-Datei erstellen
 
Zitat:

Zitat von sx2008 (Beitrag 1214325)
Wenn du ADO-Komponenten verwenden würdest, dann bräuchtest du keine ODBC-Verbindung und könntest dir die Änderungen in der Registry sparen.
Wie wär's damit?

Das wurde schon hier angesprochen.

Ykcim 6. Mai 2013 14:50

AW: ODBC zu Access via Batch-Datei erstellen
 
Ich wünschte mir auch, ich hätte nicht die Starter... Schmecken tut mir diese Vorgehensweise auch nicht, schon weil ich mich mit der Regitry noch nie beschäftigt habe...

Mit der Batch-Datei bekomme ich es leider auch nicht hin. Er legt zwar nach dem Änderungsvorschlag von baumina alles an, erzählt mir aber dann, dass er die Driver Datei (C:\Windows\system32\odbcjt.dll) nicht finden kann.

Ich habe es jetzt mit er veränderten *.reg Datei gelöst.

Jetzt komme ich aber bei der Überprüfung, ob die ODBC-Schnittstelle vorhanden ist, nicht weiter. Kann mir da einer einen Schups geben? Ich bin dem Link von Bernhard Geyer gefolgt, habe aber noch keine Lösung damit gefunden - tue mich damit etwas schwer.

Vielen Dank

Patrick

Bernhard Geyer 6. Mai 2013 14:54

AW: ODBC zu Access via Batch-Datei erstellen
 
Zitat:

Zitat von Ykcim (Beitrag 1214343)
..., erzählt mir aber dann, dass er die Driver Datei (C:\Windows\system32\odbcjt.dll) nicht finden kann.

Erstens heißt die DLL odbcjt32.dll und zweitens ist sie unter C:\Windows\SysWOW64 zu finden. Nur auf 32-Bit Systemen liegt sie unter C:\Windows\system32.


Alle Zeitangaben in WEZ +1. Es ist jetzt 05:21 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz