Tools Links Login

Add your program to the Right-Mouse-Click menu

Let your program be listed in the right-mouse-click for a particular file type. You program can then be run with a simple click

Original Author: Jamin

Inputs

The filetype you want to add to. Your program's path & filename.

Assumptions

This program only adds the regisrty key. It can be removed by running regedit then manually deleting the key. The location can be seen in the code.

Returns

Adds a registry key

Side Effects

Playing with the registry can be dangerous. I have run this on my computer and it works fine. I take no responsibility for any mishaps that occur.

API Declarations

Const REG_SZ = 1
Const HKEY_LOCAL_MACHINE = &H80000002
Private Declare Function RegCloseKey Lib "advapi32.dll" (ByVal Hkey 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 RegSetValueEx Lib "advapi32.dll" Alias "RegSetValueExA" (ByVal Hkey As Long, ByVal lpValueName As String, ByVal Reserved As Long, ByVal dwType As Long, lpData As Any, ByVal cbData As Long) As Long

Code

Public Sub SetStringValue(Hkey As Long, strPath As String, strValue As String, strdata As String)
  Dim keyhand As Long
  Dim i As Long
  i = RegCreateKey(Hkey, strPath, keyhand)
  'Changed the normal keyvalue name to vbNullString to set it as the (Default) value
  i = RegSetValueEx(keyhand, vbNullString, 0, REG_SZ, ByVal strdata, Len(strdata))
  i = RegCloseKey(keyhand)
End Sub
Private Sub Form_Load()
'Create Reg Key for filetype, (can be found by looking in HKEY_CLASSES_ROOT then the extension, the (Default) value pionts to the file type, located in the HKEY_CLASSES_ROOT folder)
'Replace """C:Project1.exe"" %1" with your program path & name. "%1" means send the file name you click on as the commandline arguments.
SetStringValue HKEY_LOCAL_MACHINE, "SOFTWAREClassesPaint.PictureshellText To Displaycommand", 0, """C:Project1.exe"" %1"
End Sub

About this post

Posted: 2003-06-01
By: ArchiveBot
Viewed: 92 times

Categories

Visual Basic 6

Attachments

No attachments for this post


Loading Comments ...

Comments

No comments have been added for this post.

You must be logged in to make a comment.