ERLEDIGT
NEIN
NEIN
ANTWORTEN
1
1
ZUGRIFFE
732
732
EMPFEHLEN
-
17.08.11 10:50 #1
- Registriert seit
- Apr 2007
- Beiträge
- 153
Hallo,
ich erzeuge in einer .NET Anwendung eine Textdatei mit einer bestimmten Dateiendung und einem bestimmten Format.
Nachdem ich die Datei im Dateisystem erzeugt habe, würde ich sie gerne aus meiner .NET Anwendung herus mit der Anwedung öffnen, die für das Öffnen von Dateien mit dieser Dateiendung zuständig ist.
Falls es keine Anwendung gibt, die für das Öffnen von Dateien mit dieser bestimmten Dateiendung zuständig ist, möchte ich die Datei mit Word Pad öffnen.
Wie kann ich das in .NET realisieren ?
-
17.08.11 15:01 #2
- Registriert seit
- Aug 2001
- Ort
- Österreich, Stmk, Graz
- Beiträge
- 2.783
Hi.
Das Starten der Datei mit dem damit verknüpften Programm ansich wäre einfach. Dazu brauchst du einfach nur bei Process.Start den Pfad zur Datei angeben.
Wenn du aber vorher sehen willst ob überhaupt ein Programm zugewiesen ist, kannst du das folgende Snippet benutzen.
Es schaut in der Registry nach ob die Endung eingetragen ist, und gibt wenn etwas gefunden wurde den Pfad zum Programm zurück. Wenn nichts gefunden wurde, wird ein leerer String zurückgegeben.
Code csharp:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
public static string GetAssociatedProgram(string FileExtension) { // Returns the application associated with the specified // FileExtension // ie, path\denenv.exe for "VB" files Microsoft.Win32.RegistryKey objExtReg = Microsoft.Win32.Registry.ClassesRoot; Microsoft.Win32.RegistryKey objAppReg = Microsoft.Win32.Registry.ClassesRoot; string strExtValue = null; try { // Add trailing period if doesn't exist if (FileExtension[0] != '.') FileExtension = "." + FileExtension; // Open registry areas containing launching app details objExtReg = objExtReg.OpenSubKey(FileExtension.Trim()); strExtValue = objExtReg.GetValue(null) as string; objAppReg = objAppReg.OpenSubKey(strExtValue + "\\shell\\open\\command"); // Parse out, tidy up and return result string[] SplitArray = (objAppReg.GetValue(null) as string).Split('"'); if (SplitArray[0].Trim().Length > 0) { return SplitArray[0].Replace("%1", ""); } else { return SplitArray[1].Replace("%1", ""); } } catch { return string.Empty; } }
(Der Code stammt von Which Program Handles that File Extension? und wurde nach C# konvertiert..)
lg,..With the first link the chain is forged. The first speech censored, the first thought forbidden, the first freedom denied, chains us all irrevocably.
Aaron Satie
Legends... are the spice of the universe, Mr. Data, because they have a way of sometimes coming true.
Captain Jean-Luc Picard, Stardate ~41294.5
Tutorials.de chattet. Hier gibts auch .net Support ^^
Klickt auf chattet und nutzt den Webchat, oder verbindet euch zu irc.tutorials.de - Channel #Tutorials.de
(moo)blog furred.net // SiteInfo für WP7 // Pastebin für WP7 // BlogEngine.net Extensions
Ähnliche Themen
-
Textdatei öffnen
Von ganjin im Forum Visual Basic 6.0Antworten: 7Letzter Beitrag: 24.06.08, 19:16 -
Anwendung öffnen
Von sadi im Forum HTML & XHTMLAntworten: 7Letzter Beitrag: 03.03.08, 14:24 -
Textdatei öffnen
Von Christopher1991 im Forum Delphi, Kylix, PascalAntworten: 2Letzter Beitrag: 01.08.05, 10:43 -
Anwendung öffnen
Von Deunan im Forum HTML & XHTMLAntworten: 18Letzter Beitrag: 05.07.03, 14:21 -
C#: Textdatei öffnen
Von MSuter im Forum C/C++Antworten: 2Letzter Beitrag: 02.09.02, 22:06





Zitieren

Login





