📄 文件关联.bas
字号:
Attribute VB_Name = "文件关联"
Option Explicit
Public Relate As Boolean
Private Declare Function RegCreateKey Lib "advapi32.dll" Alias "RegCreateKeyA" (ByVal hKey As Long, ByVal lpSubKey As String, phkResult As Long) As Long
Private Declare Function RegSetValue Lib "advapi32.dll" Alias "RegSetValueA" (ByVal hKey As Long, ByVal lpSubKey As String, ByVal dwType As Long, ByVal lpData As String, ByVal cbData As Long) As Long
Private Declare Function RegDeleteKey Lib "advapi32.dll" Alias "RegDeleteKeyA" (ByVal hKey As Long, ByVal lpSubKey As String) As Long
Private Const ERROR_SUCCESS = 0
Private Const ERROR_BADDB = 1
Private Const ERROR_BADKEY = 2
Private Const ERROR_CANTOPEN = 3
Private Const ERROR_CANTREAD = 4
Private Const ERROR_CANTWRITE = 5
Private Const ERROR_OUTOFMEMORY = 6
Private Const ERROR_INVALID_PARAMETER = 7
Private Const ERROR_ACCESS_DENIED = 8
Private Const HKEY_CLASSES_ROOT = &H80000000
Private Const MAX_PATH = 256
Private Const REG_SZ = 1
Sub Main()
If Len(GetSetting("魔剑压缩机", "DSE文件关联", "关联")) = 0 Then SetRelate
Relate = GetSetting("魔剑压缩机", "DSE文件关联", "关联")
FrmMain.Show
End Sub
Public Sub SetRelate()
Dim lphKey As Long
Call RegCreateKey(HKEY_CLASSES_ROOT, "魔剑压缩机", lphKey)
Call RegSetValue(lphKey, "", REG_SZ, "DSE", 0)
Call RegCreateKey(HKEY_CLASSES_ROOT, ".DSE", lphKey)
Call RegSetValue(lphKey, "", REG_SZ, "魔剑压缩机", 0)
Call RegCreateKey(HKEY_CLASSES_ROOT, "魔剑压缩机", lphKey)
Call RegSetValue(lphKey, "DefaultIcon", REG_SZ, App.Path & "\" & App.EXEName & ".exe,1", MAX_PATH)
Call RegSetValue(lphKey, "shell\open\command", REG_SZ, """" & App.Path & "\" & App.EXEName & ".exe"" ""%1""", MAX_PATH)
Call SaveSetting("魔剑压缩机", "DSE文件关联", "关联", True)
End Sub
Public Sub DelRelate()
Call RegDeleteKey(HKEY_CLASSES_ROOT, ".DSE")
Call RegDeleteKey(HKEY_CLASSES_ROOT, "魔剑压缩机\DefaultIcon")
Call RegDeleteKey(HKEY_CLASSES_ROOT, "魔剑压缩机\shell\open\command")
Call RegDeleteKey(HKEY_CLASSES_ROOT, "魔剑压缩机\shell\open")
Call RegDeleteKey(HKEY_CLASSES_ROOT, "魔剑压缩机\shell")
Call RegDeleteKey(HKEY_CLASSES_ROOT, "魔剑压缩机")
Call SaveSetting("魔剑压缩机", "DSE文件关联", "关联", False)
End Sub
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -