Wer Applicationen ausliefert, die eine Datenbank benutzen, hat das Problem, dass die Verbindung zur Datenbank kurz der Connection-String immer anders ist. Wenn Sie eine DSN benutzen, haben Sie das Problem nicht. Die jeweilige DSN muss am Client konfiguriert werden und los gehts. Verbindungen über ODBC zu einer SQL-Datenbank bringen das Problem von starken Performance-Verlusten mit sich. Was aber wenn Sie die Verbindung über UDL in Ihrer Application ermöglichen wollen. Sie brauchen keinen ConnString-Generator codieren, denn den gibt es schon.
Hier der bekannte Dialog:
Mit dessen Hilfe können Sie jede OLE-DB fähige DB ansprechen und die Verbindungsinformationen generieren lassen. Microsoft publiziert allerdings die Verwendung des Dialogs nicht. Er ist einfach zu verwenden und über ActiveX in viele Applicationen implementierbar. Die Lösung heisst "Microsoft OLE DB Service Component...". Diese zählt zu den (von Microsoft) undokumentierten Komponenten.
Und hier die Verwendung in VB:
Sie brauchen eine neue Standard-EXE, dann Verweis(oben) setzen, auf der Form der Buttons(cmdNew, cmdBearbeiten) und eine Textbox(txtConnString) erstellen. Und dann folgendes Code...
Und das wars schon.
TIP!
Wenn Sie ein neues Textfile erstellen mit der Extension UDL z.B. "calldlg.udl" erstellen und einen Doppelklick drauf machen, öffnet sich ebenfalls der Datenverknüpfungs-Eigenschaften-Dialog. Wählen Sie eine Verbindung aus. Danach öffnen Sie die UDL-Datei mit Notepad. Hier können Sie sich den Connection-String einfach ausschneiden. Das ganze funktioniert nur bei registrierter UDL-Extension. Die wird meist durch die Installation der MDAC erstellt.