把比较完整的代码贴上来吧 '先声明一下api函数 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 RegCreateKey Lib "advapi32.dll" Alias "RegCreateKeyA" (ByVal hKey As Long, ByVal lpSubKey As String, phkResult As Long) As Long Private Declare Function RegCloseKey Lib "advapi32.dll" (ByVal hKey As Long) As Long'定义常量 Private Const HKEY_LOCAL_MACHINE = &H80000002 Private Const REG_SZ = 1 'дע²á±í Dim Ret2 As Long
比如你要添加到文件夹的右键菜单
在“HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Directorv\shell”“folder”设为自己想要的名称,如“常用文件夹”
然后再建个名为“command”的子键数值设置为你的程序的命令比如“c:\winrar\winrar.exe "%1"”,
这样就可以了
'先声明一下api函数
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 RegCreateKey Lib "advapi32.dll" Alias "RegCreateKeyA" (ByVal hKey As Long, ByVal lpSubKey As String, phkResult As Long) As Long
Private Declare Function RegCloseKey Lib "advapi32.dll" (ByVal hKey As Long) As Long'定义常量 Private Const HKEY_LOCAL_MACHINE = &H80000002
Private Const REG_SZ = 1 'дע²á±í
Dim Ret2 As Long
RegCreateKey HKEY_LOCAL_MACHINE, "software\classes\directory\shell\openwithme", Ret2
RegSetValue Ret2, vbNullString, REG_SZ, "用我打开", 4
RegCreateKey HKEY_LOCAL_MACHINE, "SOFTWARE\Classes\Directory\shell\openwithme\command", Ret2 RegSetValue Ret2, vbNullString, REG_SZ, "c:\windows\system32\cmd.exe", 4
RegCloseKey Ret2这样就能创建一个在所有文件夹下都可以点右键出来的菜单
他显示为 用我打开 点击后运行cmd命令行
//在我的程序未开启的情况下实现"粉碎文件"的功能呢
未开启?后台运行?
====================================================
我只是尽量把问题描述的白一点而已!
还有谢谢aspower同志了!!
呵呵