Hallo,
Ich schlage mich jetzt schon eine Woche mit einem eigentlich simplen Problem herum: Ich habe eine Anwendung mit typisierten DataSets und einer Access-DB als Datenquelle. Läuft in der Entwicklung problemlos.
Jetzt das Problem: Die Verbindung zur Datenquelle läuft ja über den von VisualStudio generierten ConnectionString, der u.a. in der programm.exe.config hinterlegt ist. Als Source ist der Pfad der Entwicklungsumgebung eingetragen. Also den ConnectingString ändern. Entweder über die Settings oder die programm.exe.config. Beides macht Probleme:
ConnectionString in den Settings ändern geht nicht, ist ja leider nur ReadOnly.
Ändern der config als Mittel der Wahl? Geht zwar in meiner Entwicklungsumgebung, aber: Wenn das Programm auf einem anderer Rechner installiert wird, stimmt die Adresse natürlich nicht mehr. Könnte ich beim Programmstart ja ändern, aber der Ordner Programm (x86) hat i.d.R. nur Leserechte! Daher ist leider der Weg über den relativen Pfad |DataSource| auch nicht möglich.
Die DB in einen Benutzerordner (\User\AppData\local\.. verschieben: geht. Aber ich kann diesen Speicherort wegen des bei der Installation unbekannten User-Namens nicht vor der Installation in die .config übernehmen. Nachher geht wegen fehlender Rechte der ja in dem Programm(x86)-Ordner liegenden config auch nicht.
Google habe ich natürlich schon heftigst befragt, aber keine wirklich verwertbare Lösung gefunden.
Es kann doch wirklich nicht so selten sein, dass eine auf Access aufbauende App auf andere Rechner installiert wird (und dann auch auf die DB lesend und schreibend zugreifen kann/soll). Wie habt Ihr das gelöst???
Grüße
ptbberlin
Ich schlage mich jetzt schon eine Woche mit einem eigentlich simplen Problem herum: Ich habe eine Anwendung mit typisierten DataSets und einer Access-DB als Datenquelle. Läuft in der Entwicklung problemlos.
Jetzt das Problem: Die Verbindung zur Datenquelle läuft ja über den von VisualStudio generierten ConnectionString, der u.a. in der programm.exe.config hinterlegt ist. Als Source ist der Pfad der Entwicklungsumgebung eingetragen. Also den ConnectingString ändern. Entweder über die Settings oder die programm.exe.config. Beides macht Probleme:
ConnectionString in den Settings ändern geht nicht, ist ja leider nur ReadOnly.
Ändern der config als Mittel der Wahl? Geht zwar in meiner Entwicklungsumgebung, aber: Wenn das Programm auf einem anderer Rechner installiert wird, stimmt die Adresse natürlich nicht mehr. Könnte ich beim Programmstart ja ändern, aber der Ordner Programm (x86) hat i.d.R. nur Leserechte! Daher ist leider der Weg über den relativen Pfad |DataSource| auch nicht möglich.
Die DB in einen Benutzerordner (\User\AppData\local\.. verschieben: geht. Aber ich kann diesen Speicherort wegen des bei der Installation unbekannten User-Namens nicht vor der Installation in die .config übernehmen. Nachher geht wegen fehlender Rechte der ja in dem Programm(x86)-Ordner liegenden config auch nicht.
Google habe ich natürlich schon heftigst befragt, aber keine wirklich verwertbare Lösung gefunden.
Es kann doch wirklich nicht so selten sein, dass eine auf Access aufbauende App auf andere Rechner installiert wird (und dann auch auf die DB lesend und schreibend zugreifen kann/soll). Wie habt Ihr das gelöst???
Grüße
ptbberlin