Laden...

Access-Datei aus CSharp erstellen

Erstellt von Unikum vor 19 Jahren Letzter Beitrag vor 19 Jahren 1.392 Views
U
Unikum Themenstarter:in
228 Beiträge seit 2004
vor 19 Jahren
Access-Datei aus CSharp erstellen

Hallo,
nach langen Suchen hoffe ich doch, daß Ihr mir hier helfen könnt.
Ich möchte aus C# eine MS-Access-Datei erstellen. Doch wie mache ich das? Der Anwender soll den Namen der Datei selbst eingeben können und danach wird die Datei erstellt. Doch in der MSDN und in Foren habe ich nichts dazu gefunden wie generell eine ich sag mal Application-Datei (z.B. auch für Excel oder StarOffice etc) erstellt werden kann.

Gruß Olli

49.485 Beiträge seit 2005
vor 19 Jahren

Hallo Unikum,

eine Application-Datei kann man eben nicht generell erstellen, weil solche Dateien quasi per Definition anwendungsspezifisch sind. Wenn ich eine neue Anwendung schreibe und die Daten dieser Anwendung abspeichern will, dann denke ich mir halt ein neues Format aus. Anschließend kann dann genau meine Anwendung dieses Format lesen und schreiben, aber keine andere. Oft ist es sogar so, dass die Autoren von Anwendungen das Format extra kompliziert gestalten und auch keine Dokumentation über das Format offenlegen, damit andere Anwendungen eben nicht dieses Format lesen oder schreiben können.

Natürlich gibt es auch ein paar Standardformate, deren Spezifikation offen gelegt wurde, z.B. .bmp, .jpg u.ä.

Im Fall von Access sollte es aber möglich sein (zumindest, wenn du Access installiert hast). Da Access ein Datenbankformat ist und .NET mit Datenbanken umgehen kann, müsstest du in der Dokumenation bei den Datenbankklassen fündig werden (gemacht habe ich mit Access es noch nicht, aber es sollte wie gesagt gehen).

Nachfragen zu diesem Thema sind dann aber besser im Forum Entwicklung/ADO.NET aufgehoben.

HTH

herbiore

B
483 Beiträge seit 2005
vor 19 Jahren

Hallo,

ich habe nicht nicht ganz verstanden, was genau passieren soll.

  1. Wenn es um eine Kopie handelt dann so.
File.Copy("C:\\test.mdb, C:\\test1.mdb");
  1. Wenn ganz neu
ADOX.Catalog =new ADOX.Catalog();
Catalog.Create("Provider=Microsoft.Jet.OLEDB.4.0; Data Source=C:\\test.mdb");

ADOX sind COM-Objekte, die müssen vorher eingebunden werden.
Es gibt viele Parameter für create, da kann man viel auswählen.
Gruss,
Boris

U
Unikum Themenstarter:in
228 Beiträge seit 2004
vor 19 Jahren

Hi Boco

genau das hab ich gesucht. Hat auch geklappt. Danke für die Lösung.

Gruß Olli