2017-07-14 4 views
1

J'ai fait ma demande qui peut lire une extension spécifique de la charge dans Visual Basic 2017.Association de fichiers pour ma propre application Visual Basic

Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load 
     If Environment.GetCommandLineArgs(1).ToString = My.Application.Info.DirectoryPath.ToString + "\" + My.Application.Info.AssemblyName + ".exe" Then 

     Else 
      If System.IO.Path.GetExtension(Environment.GetCommandLineArgs(1)) = ".myOwnExt" Then 
       Dim fileReader As String 
       fileReader = My.Computer.FileSystem.ReadAllText(Environment.GetCommandLineArgs(1).ToString) 
       MsgBox(fileReader) 
      End If 
     End If 
    End Sub 

Mais je veux faire mon défaut de programme pour cette extension et je veux Définir mon icône pour ces fichiers. Est-il possible de le faire avec Visual Basic?

+0

Ceci est quelque chose que vous feriez dans Windows (ou quel que soit le système d'exploitation que vous utilisez) – Magnus

+0

Peut-être quelque chose comme: https://stackoverflow.com/questions/2681878/associate-file-extension-with-application – Magnus

+0

C'est C# et Je ne comprends pas –

Répondre

1

Votre code ressemblerait à quelque chose comme ça ...

My.Computer.Registry.ClassesRoot.CreateSubKey(".myOwnExt").SetValue("", _ 
      "myOwnExt", Microsoft.Win32.RegistryValueKind.String)  
My.Computer.Registry.ClassesRoot.CreateSubKey("MyProgramName\shell\open\command").SetValue("", _ 
      Application.ExecutablePath & " ""%l"" ", Microsoft.Win32.RegistryValueKind.String) 
+0

Il ne fait rien. Je veux que mon programme soit par défaut pour ouvrir '.myOwnExt' Il ne montre qu'une erreur quand je l'ouvre à travers le fichier –