Oeffnen mit, einlesen

07/09/2007 - 13:40 von walter hausser | Report spam
Hallo Leute!

Ich habe folgendes Problem:
Mein Programm speichert Daten als .xml files. Nun will, dass wenn der
Benutzer in Windows XP auf ein .xml file rechtsklickt und "Oeffnen
mit.." auswàhlt, und dann mein Programm auswàhlt, dass dann eben das
Program genau diese xml file öffnet.

Bisher habe ich das statisch; d.h. die Methode MainForm_Load öffnet ein
fest vorgegebens xml file, z.B. "C:\test.xml". Nun will ich aber
"C:\test.xml" durch das xml file ersetzen, aus welches der Benutzer
rechtsgelickt hat.

Der Code für statische files war:

private void MainForm_Load(object sender, System.EventArgs e)
{
Stream myStream = File.OpenRead("C:\\test.xml");

XmlSerializer s = new XmlSerializer (typeof(storage));
objstorage = (storage)s.Deserialize(myStream);

myStream.Close();
}



PS: Zur Klarstellung nochmal: Natürlich hat es im Programm selber ein
Menüpunkt, wo man files auswàhlen kann und öffnen kann. Aber dazu muss
dass Programm erst laufen. (Man muss auch nicht zuerst Winamp oeffnen,
und dann das Mp3 file wàhlen, sonder kann direkt auf das Mp3 file
doppelklicken.)


Ich hoffe, ihr könnt mir helfen.

Besten Dank

Walter
 

Lesen sie die antworten

#1 Stefan Braumeister
07/09/2007 - 13:54 | Warnen spam
walter hausser schrieb:
Hallo Leute!

Ich habe folgendes Problem:
Mein Programm speichert Daten als .xml files. Nun will, dass wenn der
Benutzer in Windows XP auf ein .xml file rechtsklickt und "Oeffnen
mit.." auswàhlt, und dann mein Programm auswàhlt, dass dann eben das
Program genau diese xml file öffnet.

Bisher habe ich das statisch; d.h. die Methode MainForm_Load öffnet ein
fest vorgegebens xml file, z.B. "C:\test.xml". Nun will ich aber
"C:\test.xml" durch das xml file ersetzen, aus welches der Benutzer
rechtsgelickt hat.

Der Code für statische files war:

private void MainForm_Load(object sender, System.EventArgs e)
{
Stream myStream = File.OpenRead("C:\\test.xml");

XmlSerializer s = new XmlSerializer (typeof(storage));
objstorage = (storage)s.Deserialize(myStream);

myStream.Close();
}



PS: Zur Klarstellung nochmal: Natürlich hat es im Programm selber ein
Menüpunkt, wo man files auswàhlen kann und öffnen kann. Aber dazu muss
dass Programm erst laufen. (Man muss auch nicht zuerst Winamp oeffnen,
und dann das Mp3 file wàhlen, sonder kann direkt auf das Mp3 file
doppelklicken.)





Sihe dazu MSDN:

System.Environment.GetCommandLineArgs();

Gruß Stefan


Ich hoffe, ihr könnt mir helfen.

Besten Dank

Walter

Ähnliche fragen