Frage von JaskiHax, 40

Visual Basic: "Öffnen mit..." Funktion einbauen?

Hallo liebe Community. Ich programmiere schon etwas länger in Visual Basic doch habe ein wesentliches Problem: Ihr kennt doch sicher bei Windows wenn ihr eine Datei habt und Rechtsklick macht, und "Öffnen mit..." auswählt. Dann wählt man ein Programm aus, zum Beispiel den Texteditor von Windows. Er liest die Datei die ihm durch das "Öffnen mit..." mitgegeben wurde aus.

Wie kann ich das in ein Programm einbauen, dass ich wenn zum Beispiel eine ".txt" Datei habe und die dann mit meinem eigenen Texteditor öffne das ich zuerst eine Abfrage mache ob mir eine datei mitgegeben wurde, wenn ja dann lese sie aus und wenn nein dann nicht?

ich habe es schon mit Umgebungsvariabeln ausprobiert und kann sie auch auslesen, jedoch habe ich in keiner Umgebungsvariable den Pfad der Datei oder die Datei selbst gefunden. Danke im Vorraus.

Gruß, Jaski

Hilfreichste Antwort - ausgezeichnet vom Fragesteller
von CrystalixXx, 22

Der Pfad der Datei wird typischerweise als Argument der Anwendung übergeben.

Du kannst die Kommandozeilen-Argumente über "Environment.GetCommandLineArgs" auslesen.

Kommentar von JaskiHax ,

Vielen Dank, es funktioniert nachhaltig

Kommentar von JaskiHax ,

Vielen Dank

Antwort
von Berny96, 23

Wenn du öffnen mit drückst dann wird der Pfad der Datei als Argument mit gegeben. Wenn du z.B ein Konsolen Programm schreibst kennst du doch wahrscheinlich die Main Methode richtig? Die nimmt einen array an der "args" heißt. Da drin sind alle Argumente enthalten die beim starten des Programms mitgegeben werden. Wenn du für eine bestimmte exe eine Verknüpfung erstellst kannst du auch beim Ziel mithilfe eines Leerzeichens einen Argument mitgeben. Dieser ist dann in dem Array enhalten. 

Wenn du den Pfad kennst, kennst du auch die Datei und alles was dadrin steckt. Die Programme gucken sich dann an was das für eine Datei ist und laden alle gespeicherten Infos wenn es eine Datei der Art des Programms ist. 

Keine passende Antwort gefunden?

Fragen Sie die Community

Weitere Fragen mit Antworten