Gå til innhold

Filtype? hvordan lage og registerer filtype til...


Anbefalte innlegg

Videoannonse
Annonse

En installer (som beskrevet i tråden din her) kan gjøre dette for deg.

 

EDIT: Men du må legge til rutiner slik at programmet kan akseptere argumenter. Legg til denne i Form.Load:

Dim strOpenCommand As String = Microsoft.VisualBasic.Command

 

Denne vil returnere åpningsargumenter. Hvis du assosierer en filtype med et program, vil Windows sende parameterne til programmet. La oss si at du dobbeltklikker på på "minfil.123" og 123 er en endelse som du har assosiert med "mittprogram.exe". Da vil windows kjøre noe tilsvarende dette: "mittprogram.exe minfil.123".

 

strOpenCommand (som du deklarerte over) vil når programmet starter returnere "minfil.123". Slik kan du gjøre noe a la:

        Dim strOpenCommand As String = Microsoft.VisualBasic.Command
       If not strOpenCommand = ""
           'Vi har en fil sendt til oss, la oss åpne den:
           OpenFile(strOpenCommand)
           
           'Det er selvfølgelig en fordel å sjekk om filen eksisterer,
           'om det er en fil som faktisk hører til ditt program og så videre...
       End If

 

 

EDIT 2: Du kan selvfølgelig bruke strOpenCommand til andre brytere og parametre enn filnavn (f.eks. kjøre "mittprogram.exe -minimize" starter programmet minimert, etc), men det får du bestemme selv... ;)

Endret av moskus
Lenke til kommentar

Takker for hjelp :)

 

Jeg har en sub som sørger for load av filer.

 

Problemet er at når den sub blir called by formload altså den strOpenCommand stringen får jeg illegal character.

 

Viss det er f.eks openfiledialog som finner samme fil, funker det helt fint??

 

Utrolig frustrerende? :mad::hrm:

 

Public Function loadgloser(ByVal filename As String)

       Dim i As Integer = 0
       Dim u As Integer = 1
       Dim temp() As String
       FileOpen(1, filename, OpenMode.Input, OpenAccess.Read)
       Do Until (EOF(1))
           If u = 1 Then
               If Not LineInput(1) = "gloser" Then
                   MsgBox("Beklager, men dette dokumentet er ikke et godkjent glosesett", MsgBoxStyle.Critical, "Load av gloser aborted")
                   FileClose(1)
                   Return 1
                   Exit Function
               End If
           ElseIf u = 2 Then
               glosedata = LineInput(1)
           ElseIf u >= 2 Then
               temp = Split(LineInput(1), "|")
               gloser1.Items.Add(temp(0))
               gloser2.Items.Add(temp(1))
           End If
           u += 1
       Loop
       FileClose(1)

       Return 1

       MsgBox("feil sjedde i loadglose", MsgBoxStyle.Information, "feil")
   End Function

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

       Dim strOpenCommand As String = Microsoft.VisualBasic.Command
       ' Dim Args() As String = Environment.GetCommandLineArgs
       If Not strOpenCommand = "" Then
           'Vi har en fil sendt til oss, la oss åpne den:
           loadgloser(strOpenCommand)
       End If

       op.Filter = "Bare filer støttet av programmet.|*.tio"
       '  debug()
   End Sub

 

*jobbe videre med resten av programmet* :cool:

Endret av chills
Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...