none
"Öffnen mit..." Kontextmenü RRS feed

  • Frage

  •  

    Hallo,

    mit welchem Befehl schaffe ich es, dass ich eine Datei per Kontextmenü "Öffnen mit..." in meine Datei laden kann?

     

    mfg christianhelge

    Freitag, 11. Januar 2008 18:29

Antworten

  • Hi,

    Also du meinst wahrscheinlich mit einem dialofeld.

        Private Sub cmdÖffnen_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdÖffnen.Click
            Dim ofd As New OpenFileDialog
            With ofd
                 'Der Ordner der beim öffnen als erstes angezeigt wird
                .InitialDirectory = "C:\"
               'Filter einstellen:(Beschreibung|Formst)
                .Filter = "Textdateien |*.txt;*.doc|Alle Dateien|*.*"
    'Titel festlegen
                .Title = "Textdatei zum Importieren auswählen"
            End With
            If ofd.ShowDialog() = DialogResult.OK Then
                'Dialog wird angezeigt
                 'Wenn nutzer auf OK klickt:
                 'In ofd.FileName steht die ausgewählte Datei
                MessageBox.Show(ofd.FileName)
            End If
        End Sub
    

    Mfg Leon


    Viel Spass


    • Bearbeitet LE1999 Donnerstag, 19. Januar 2012 16:09
    • Als Antwort vorgeschlagen LE1999 Donnerstag, 19. Januar 2012 16:11
    • Als Antwort markiert Robert Breitenhofer Donnerstag, 9. Februar 2012 13:07
    Donnerstag, 19. Januar 2012 16:07
  • Hi,

    Also ich verstehe die Frage mal folgendermaßen:

    Du möchtest im Windows-Explorer per Rechtsklick auf deine Datei -> öffnen mit -> dein Programm

    dein Programm starten und Zugriff auf die ausgewählte Datei haben.

    Falls das die Frage war: Die Auswahl von "öffnen mit" erstellt eigentlich einen DOS-Befehl, der folgendermaßen aussieht:

    "<Pfad\Name des Programms>" "<Pfad\Name der ausgewählten Datei>"

    Auf diesen DOS-Befehl, die sogenannte Environment-Line kannst du mit folgendem Befehl abrufen:

    Dim filename as String = Environment.CommandLine.ToString()

    Jetzt musst du nur noch von dem erhaltenen String den hinteren Teil trennen. Die Methode Split("""") teilt den String in viele Teilstrings, getrennt durch das angegebene character (hier ein Anführungszeichen) in einem Array. Der Zugriff auf den Dateinamen sieht dann folgendermaßen aus:

    Dim filename As String = Environment.CommandLine.ToString().Split("""")(3)

     

    mfg

    Imperium_Romanum


    MAY THE SOURCE BE WITH YOU!
    Donnerstag, 19. Januar 2012 22:58

Alle Antworten

  • Hi,

    Also du meinst wahrscheinlich mit einem dialofeld.

        Private Sub cmdÖffnen_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdÖffnen.Click
            Dim ofd As New OpenFileDialog
            With ofd
                 'Der Ordner der beim öffnen als erstes angezeigt wird
                .InitialDirectory = "C:\"
               'Filter einstellen:(Beschreibung|Formst)
                .Filter = "Textdateien |*.txt;*.doc|Alle Dateien|*.*"
    'Titel festlegen
                .Title = "Textdatei zum Importieren auswählen"
            End With
            If ofd.ShowDialog() = DialogResult.OK Then
                'Dialog wird angezeigt
                 'Wenn nutzer auf OK klickt:
                 'In ofd.FileName steht die ausgewählte Datei
                MessageBox.Show(ofd.FileName)
            End If
        End Sub
    

    Mfg Leon


    Viel Spass


    • Bearbeitet LE1999 Donnerstag, 19. Januar 2012 16:09
    • Als Antwort vorgeschlagen LE1999 Donnerstag, 19. Januar 2012 16:11
    • Als Antwort markiert Robert Breitenhofer Donnerstag, 9. Februar 2012 13:07
    Donnerstag, 19. Januar 2012 16:07
  • Hi,

    Also ich verstehe die Frage mal folgendermaßen:

    Du möchtest im Windows-Explorer per Rechtsklick auf deine Datei -> öffnen mit -> dein Programm

    dein Programm starten und Zugriff auf die ausgewählte Datei haben.

    Falls das die Frage war: Die Auswahl von "öffnen mit" erstellt eigentlich einen DOS-Befehl, der folgendermaßen aussieht:

    "<Pfad\Name des Programms>" "<Pfad\Name der ausgewählten Datei>"

    Auf diesen DOS-Befehl, die sogenannte Environment-Line kannst du mit folgendem Befehl abrufen:

    Dim filename as String = Environment.CommandLine.ToString()

    Jetzt musst du nur noch von dem erhaltenen String den hinteren Teil trennen. Die Methode Split("""") teilt den String in viele Teilstrings, getrennt durch das angegebene character (hier ein Anführungszeichen) in einem Array. Der Zugriff auf den Dateinamen sieht dann folgendermaßen aus:

    Dim filename As String = Environment.CommandLine.ToString().Split("""")(3)

     

    mfg

    Imperium_Romanum


    MAY THE SOURCE BE WITH YOU!
    Donnerstag, 19. Januar 2012 22:58
  • Hallo Christianhelge,

    Ich gehe davon aus, dass die Antworten Dir weitergeholfen haben.
    Solltest Du noch "Rückfragen" dazu haben, so gib uns bitte Bescheid.

    Grüße,
    Robert


    Robert Breitenhofer, MICROSOFT  Twitter Facebook
    Bitte haben Sie Verständnis dafür, dass im Rahmen dieses Forums, welches auf dem Community-Prinzip „Entwickler helfen Entwickler“ beruht, kein technischer Support geleistet werden kann oder sonst welche garantierten Maßnahmen seitens Microsoft zugesichert werden können.

    Donnerstag, 9. Februar 2012 13:07