Originariamente inviato da binos1979
il problema è questo ma anche io vorrei farlo da codice
Devi importare Microsoft.Win32, necessario per la modifica del registro di sistema. Poi devi usare il tipo RegistryKey e anche Registry, ad esempio nel tuo caso:
codice:
Public Sub Assoociate()
'Variabile di tipo RegistryKey
Dim RegKey As RegistryKey
'Crei una nuova chiave in HKEY_CLASSES_ROOT con la tua estensione .xyz
RegKey = Registry.ClassesRoot.CreateSubKey(".xyz")
'Crei il valore (Predefinito) nella chiave e ci scrivi il nome che hai scelto
RegKey.SetValue("(Predefinito)", "extxyz")
'Crei un'altra chiave col nome che hai scelto
RegKey = Registry.ClassesRoot.CreateSubKey("extxyz")
'Crei la sottochiave shell (trascurando un attimo defaulticon) e la sottochiave Open, child di shell
RegKey = RegKey.CreateSubKey("shell").CreateSubKey("open")
'Crei il valore (Predefinito) in cui metti il comando da eseguire
RegKey.SetValue("(Predefinito)", Application.ExecutablePath + "%1")
'Fatto
End Sub