Announcement

Collapse
No announcement yet.

GetCommandLineArgs an Exe übergeben

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • GetCommandLineArgs an Exe übergeben

    Servus :-)

    kann mir jemand helfen:

    wenn ich in nem dateiordner z.b. mehrere dateien markiere und mit "rechtsclick" auf öffnen mit gehe > dann meinNetProgramm wähle

    kann ich mit:

    Code:
       Dim args As String()
            args = Environment.GetCommandLineArgs()
    die übergabeparameter auslesen.

    LEIDER kommen da immer nur 2 param. an (der exename und eine der markierten dateien)

    was muss ich machen um mehrere dateien (namen) zu übergeben ?

    Vor 4,5 Millionen Jahren lernten ~wir~ aufrecht zu gehen!
    Um heute vorm PC zu sitzen!

  • #2
    Dein Programm wird n*mal (je markierter Datei) aufgerufen. Das ist das Verhalten vom Explorer und vermutlich(hoffentlich?) nicht zu ändern.

    Comment


    • #3
      Beim ersten start schaust du ob du schon läuft und überträgst den weiteren Dateinamen z.B. per WM_COPYDATA-Message and die erste schon laufende Instanz und beendest die zweite instanz wieder.

      Comment


      • #4
        Originally posted by Bernhard Geyer View Post
        Beim ersten start schaust du ob du schon läuft und überträgst den weiteren Dateinamen z.B. per WM_COPYDATA-Message and die erste schon laufende Instanz und beendest die zweite instanz wieder.
        hm ... heisst dies ich kann nicht mehr als EINE datei per "datei öffnen mit" an die anwendung übergeben ?

        bzw.

        den WM_COPYDATA-Message
        kenn ich nicht :-(

        gibts da nicht irgendeine "logik" -> start: irgendeine.exe /F oder sowas ?
        > hinsichtlich der regedit *heul*

        wäre auch zu einfach gewesen ...
        Vor 4,5 Millionen Jahren lernten ~wir~ aufrecht zu gehen!
        Um heute vorm PC zu sitzen!

        Comment


        • #5
          heisst dies ich kann nicht mehr als EINE datei per "datei öffnen mit" an die anwendung übergeben
          Doch aber jede Datei EINE eigene Instanz deiner Anwendung. Wo ist das Problem dabei? Wenn du was anders brauchst solltest du vielleicht mal erklären warum. So kann man nicht sinnvoll helfen und das Ganze nur als einen Missbrauchsversuch der 'öffnen mit' Funktion abhaken.

          Comment


          • #6
            ich habe immer wieder ziemlich viele unterschiedliche DXF-dateien zum "analysieren" der objekte in der/den selbigen (kreise/bögen/etc.)

            mit meinem vb.net programm errechne ich die strecken und so weiter

            es wäre halt ziemlich praktisch die DXF-Dateien einfach zu markieren und ALLE in einer schleife zu berechnen und dann s endergebnis am schirm anzuzeigen (meist ist es z.b. für angebote etc.)


            mfg - r.b

            PS:
            jetz dachte ich: *g* lege die dateien einfach in nen neuen ordner ... frage die erste datei nach den pfad ab und hole alle aus dem ordner ...

            nicht ganz perfekt - da oft ordner mit 100ert dateien voll sind und z.b. nur 3 oder mehr dateien gebraucht werden und so weiter
            Vor 4,5 Millionen Jahren lernten ~wir~ aufrecht zu gehen!
            Um heute vorm PC zu sitzen!

            Comment


            • #7
              Drag&Drop aus dem Explorer in deine Anwendung? Das funktioniert auch mit mehreren Dateien und erscheint mir auch weniger umständlich für den User als über 'öffnen mit'.

              Comment


              • #8
                ja ... scheint wohl der beste weg zu sein ...

                ... des mit dem "dateipfad" auslesen hat übrigens ganz gut geklappt ... dann stehen halt erstmal
                alle dateien (meist sinds ja doch nur 5 oder so) in der ergebnissliste ...

                dragAndDrop hatte ich noch nie versucht ... wird wohl zeit auch hier mal was dazuZuLernen *g*


                danke euch
                Vor 4,5 Millionen Jahren lernten ~wir~ aufrecht zu gehen!
                Um heute vorm PC zu sitzen!

                Comment

                Working...
                X