devxlogo

DeleteFileAssociation – Deleting a file association

DeleteFileAssociation – Deleting a file association

' Destroy a file associationSub DeleteFileAssociation(ByVal extension As String)    Const SHCNE_ASSOCCHANGED = &H8000000    Const SHCNF_IDLIST = 0    ' ensure that there is a leading dot    If extension.Substring(0, 1)  "." Then        extension = "." & extension    End If    ' read the associated class name    Dim regKey As Microsoft.Win32.RegistryKey    Try        regKey = Microsoft.Win32.Registry.ClassesRoot.OpenSubKey(extension)        If Not regKey Is Nothing Then            ' delete file's class name            Dim className As String = regKey.GetValue("")            If className.Length > 0 Then                Microsoft.Win32.Registry.ClassesRoot.DeleteSubKeyTree(className)            End If        End If    Catch e As Exception    Finally        If Not regKey Is Nothing Then regKey.Close()    End Try    Microsoft.Win32.Registry.ClassesRoot.DeleteSubKey(extension, False)    ' notify Windows that file associations have changed    SHChangeNotify(SHCNE_ASSOCCHANGED, SHCNF_IDLIST, 0, 0)End Sub

devx-admin

Share the Post: