Sign in to follow this  
Followers 0
telmob

Get Windows context menu entries??

6 posts in this topic

#1 ·  Posted (edited)

Hello.

This has been discussed several times here, but apparentely the solution is yet to be found.

If i have this context menu example here:

if stringinstr(@OSArch,"64") then
$hklm="HKLM64"
else
$hklm="HKEY_LOCAL_MACHINE"
endif

RegContext()
Sleep(10000)
UnregContext()
Func RegContext()

RegWrite("HKEY_CLASSES_ROOT\Directory\shell\SRP Enforcer", "MUIVerb", "REG_SZ", "SRP Enforcer")
RegWrite("HKEY_CLASSES_ROOT\Directory\shell\SRP Enforcer", "SubCommands", "REG_SZ", "Add folder to allow list")
RegWrite("HKEY_CLASSES_ROOT\Directory\shell\SRP Enforcer", "icon", "REG_SZ", @ScriptDir & "\Graphics\Protected.ico")

RegWrite("HKEY_CLASSES_ROOT\exefile\shell\SRP Enforcer", "MUIVerb", "REG_SZ", "SRP Enforcer")
RegWrite("HKEY_CLASSES_ROOT\exefile\shell\SRP Enforcer", "SubCommands", "REG_SZ", "Add to allow list;Add to block list")
RegWrite("HKEY_CLASSES_ROOT\exefile\shell\SRP Enforcer", "icon", "REG_SZ", @ScriptDir & "\Graphics\Protected.ico")

RegWrite("HKEY_CLASSES_ROOT\comfile\shell\SRP Enforcer", "MUIVerb", "REG_SZ", "SRP Enforcer")
RegWrite("HKEY_CLASSES_ROOT\comfile\shell\SRP Enforcer", "SubCommands", "REG_SZ", "Add to allow list;Add to block list")
RegWrite("HKEY_CLASSES_ROOT\comfile\shell\SRP Enforcer", "icon", "REG_SZ", @ScriptDir & "\Graphics\Protected.ico")

RegWrite("HKEY_CLASSES_ROOT\.A6P\shell\SRP Enforcer", "MUIVerb", "REG_SZ", "SRP Enforcer")
RegWrite("HKEY_CLASSES_ROOT\.A6P\shell\SRP Enforcer", "SubCommands", "REG_SZ", "Add to allow list")
RegWrite("HKEY_CLASSES_ROOT\.A6P\shell\SRP Enforcer", "icon", "REG_SZ", @ScriptDir & "\Graphics\Protected.ico")

RegWrite("HKEY_CLASSES_ROOT\.AC\shell\SRP Enforcer", "MUIVerb", "REG_SZ", "SRP Enforcer")
RegWrite("HKEY_CLASSES_ROOT\.AC\shell\SRP Enforcer", "SubCommands", "REG_SZ", "Add to allow list")
RegWrite("HKEY_CLASSES_ROOT\.AC\shell\SRP Enforcer", "icon", "REG_SZ", @ScriptDir & "\Graphics\Protected.ico")

RegWrite($hklm & "\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\Add folder to allow list", "", "REG_SZ", "Add folder to allow list")
RegWrite($hklm & "\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\Add folder to allow list", "Icon", "REG_SZ", @ScriptDir & "\Graphics\Allowed.ico")

RegWrite($hklm & "\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\Add to allow list", "", "REG_SZ", "Add to allow list")
RegWrite($hklm & "\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\Add to allow list", "Icon", "REG_SZ", @ScriptDir & "\Graphics\Allowed.ico")

RegWrite($hklm & "\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\Add to allow list\command", "", "REG_SZ", "Someexe.exe")

RegWrite($hklm & "\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\Add to block list", "", "REG_SZ", "Add to block list")
RegWrite($hklm & "\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\Add to block list", "Icon", "REG_SZ", @ScriptDir & "\Graphics\Blocked.ico")

RegWrite($hklm & "\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\Add to block list\command", "", "REG_SZ", "Someexe.exe")

EndFunc

Func UnregContext()

RegDelete("HKEY_CLASSES_ROOT\Directory\shell\SRP Enforcer")
RegDelete("HKEY_CLASSES_ROOT\exefile\shell\SRP Enforcer")
RegDelete("HKEY_CLASSES_ROOT\comfile\shell\SRP Enforcer")
RegDelete("HKEY_CLASSES_ROOT\.A6P\shell\SRP Enforcer")
RegDelete("HKEY_CLASSES_ROOT\.AC\shell\SRP Enforcer")

RegDelete($hklm & "\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\Add folder to allow list")
RegDelete($hklm & "\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\Add to allow list")
RegDelete($hklm & "\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\Add to block list")

EndFunc

(I posted several extension examples so you could understand better)

You can test this script above without messing your registry. It will self-delete after 10 seconds.

How can i get all the selected files/folders from context into script, so i can associate them with pre-defined actions?

Guinness has also been helping but i think its time i made another post regarding this matter, since all solutions are limited or not working properly.

Edited by telmob

Share this post


Link to post
Share on other sites



Solved by guinness here:

Thank you guinness!

Share this post


Link to post
Share on other sites

Well only partially, but I figured someone else could look at sub menus.


_AdapterConnections()_AlwaysRun()_AppMon()_AppMonEx()_BinaryBin()_CheckMsgBox()_CmdLineRaw()_ContextMenu()_ConvertLHWebColor()/_ConvertSHWebColor()_DesktopDimensions()_DisplayPassword()_DotNet_Load()/_DotNet_Unload()_Fibonacci()_FileCompare()_FileCompareContents()_FileNameByHandle()_FilePrefix/SRE()_FindInFile()_GetBackgroundColor()/_SetBackgroundColor()_GetConrolID()_GetCtrlClass()_GetDirectoryFormat()_GetDriveMediaType()_GetFilename()/_GetFilenameExt()_GetHardwareID()_GetIP()_GetIP_Country()_GetOSLanguage()_GetSavedSource()_GetStringSize()_GetSystemPaths()_GetURLImage()_GIFImage()_GoogleWeather()_GUICtrlCreateGroup()_GUICtrlListBox_CreateArray()_GUICtrlListView_CreateArray()_GUICtrlListView_SaveCSV()_GUICtrlListView_SaveHTML()_GUICtrlListView_SaveTxt()_GUICtrlListView_SaveXML()_GUICtrlMenu_Recent()_GUICtrlMenu_SetItemImage()_GUICtrlTreeView_CreateArray()_GUIDisable()_GUIImageList_SetIconFromHandle()_GUIRegisterMsg()_GUISetIcon()_Icon_Clear()/_Icon_Set()_IdleTime()_InetGet()_InetGetGUI()_InetGetProgress()_IPDetails()_IsFileOlder()_IsGUID()_IsHex()_IsPalindrome()_IsRegKey()_IsStringRegExp()_IsSystemDrive()_IsUPX()_IsValidType()_IsWebColor()_Language()_Log()_MicrosoftInternetConnectivity()_MSDNDataType()_PathFull/GetRelative/Split()_PathSplitEx()_PrintFromArray()_ProgressSetMarquee()_ReDim()_RockPaperScissors()/_RockPaperScissorsLizardSpock()_ScrollingCredits_SelfDelete()_SelfRename()_SelfUpdate()_SendTo()_ShellAll()_ShellFile()_ShellFolder()_SingletonHWID()_SingletonPID()_Startup()_StringCompact()_StringIsValid()_StringRegExpMetaCharacters()_StringReplaceWholeWord()_StringStripChars()_Temperature()_TrialPeriod()_UKToUSDate()/_USToUKDate()_WinAPI_Create_CTL_CODE()_WinAPI_CreateGUID()_WMIDateStringToDate()/_DateToWMIDateString()Au3 script parsingAutoIt SearchAutoIt3 PortableAutoIt3WrapperToPragmaAutoItWinGetTitle()/AutoItWinSetTitle()CodingDirToHTML5FileInstallrFileReadLastChars()GeoIP databaseGUI - Only Close ButtonGUI ExamplesGUICtrlDeleteImage()GUICtrlGetBkColor()GUICtrlGetStyle()GUIEventsGUIGetBkColor()Int_Parse() & Int_TryParse()IsISBN()LockFile()Mapping CtrlIDsOOP in AutoItParseHeadersToSciTE()PasswordValidPasteBinPosts Per DayPreExpandProtect GlobalsQueue()Resource UpdateResourcesExSciTE JumpSettings INISHELLHOOKShunting-YardSignature CreatorStack()Stopwatch()StringAddLF()/StringStripLF()StringEOLToCRLF()VSCROLLWM_COPYDATAMore Examples...

Updated: 04/09/2015

Share this post


Link to post
Share on other sites

telemob,

Are you 100% sure that code is correct? As I have a funny feeling you have been mislead a little.


_AdapterConnections()_AlwaysRun()_AppMon()_AppMonEx()_BinaryBin()_CheckMsgBox()_CmdLineRaw()_ContextMenu()_ConvertLHWebColor()/_ConvertSHWebColor()_DesktopDimensions()_DisplayPassword()_DotNet_Load()/_DotNet_Unload()_Fibonacci()_FileCompare()_FileCompareContents()_FileNameByHandle()_FilePrefix/SRE()_FindInFile()_GetBackgroundColor()/_SetBackgroundColor()_GetConrolID()_GetCtrlClass()_GetDirectoryFormat()_GetDriveMediaType()_GetFilename()/_GetFilenameExt()_GetHardwareID()_GetIP()_GetIP_Country()_GetOSLanguage()_GetSavedSource()_GetStringSize()_GetSystemPaths()_GetURLImage()_GIFImage()_GoogleWeather()_GUICtrlCreateGroup()_GUICtrlListBox_CreateArray()_GUICtrlListView_CreateArray()_GUICtrlListView_SaveCSV()_GUICtrlListView_SaveHTML()_GUICtrlListView_SaveTxt()_GUICtrlListView_SaveXML()_GUICtrlMenu_Recent()_GUICtrlMenu_SetItemImage()_GUICtrlTreeView_CreateArray()_GUIDisable()_GUIImageList_SetIconFromHandle()_GUIRegisterMsg()_GUISetIcon()_Icon_Clear()/_Icon_Set()_IdleTime()_InetGet()_InetGetGUI()_InetGetProgress()_IPDetails()_IsFileOlder()_IsGUID()_IsHex()_IsPalindrome()_IsRegKey()_IsStringRegExp()_IsSystemDrive()_IsUPX()_IsValidType()_IsWebColor()_Language()_Log()_MicrosoftInternetConnectivity()_MSDNDataType()_PathFull/GetRelative/Split()_PathSplitEx()_PrintFromArray()_ProgressSetMarquee()_ReDim()_RockPaperScissors()/_RockPaperScissorsLizardSpock()_ScrollingCredits_SelfDelete()_SelfRename()_SelfUpdate()_SendTo()_ShellAll()_ShellFile()_ShellFolder()_SingletonHWID()_SingletonPID()_Startup()_StringCompact()_StringIsValid()_StringRegExpMetaCharacters()_StringReplaceWholeWord()_StringStripChars()_Temperature()_TrialPeriod()_UKToUSDate()/_USToUKDate()_WinAPI_Create_CTL_CODE()_WinAPI_CreateGUID()_WMIDateStringToDate()/_DateToWMIDateString()Au3 script parsingAutoIt SearchAutoIt3 PortableAutoIt3WrapperToPragmaAutoItWinGetTitle()/AutoItWinSetTitle()CodingDirToHTML5FileInstallrFileReadLastChars()GeoIP databaseGUI - Only Close ButtonGUI ExamplesGUICtrlDeleteImage()GUICtrlGetBkColor()GUICtrlGetStyle()GUIEventsGUIGetBkColor()Int_Parse() & Int_TryParse()IsISBN()LockFile()Mapping CtrlIDsOOP in AutoItParseHeadersToSciTE()PasswordValidPasteBinPosts Per DayPreExpandProtect GlobalsQueue()Resource UpdateResourcesExSciTE JumpSettings INISHELLHOOKShunting-YardSignature CreatorStack()Stopwatch()StringAddLF()/StringStripLF()StringEOLToCRLF()VSCROLLWM_COPYDATAMore Examples...

Updated: 04/09/2015

Share this post


Link to post
Share on other sites

oh boy... now you're scaring me.

Share this post


Link to post
Share on other sites

oh boy... now you're scaring me.

But surely you've tested the code and know if it works or not? I'm intentionally 'scaring' you, just trying to find out the facts.

_AdapterConnections()_AlwaysRun()_AppMon()_AppMonEx()_BinaryBin()_CheckMsgBox()_CmdLineRaw()_ContextMenu()_ConvertLHWebColor()/_ConvertSHWebColor()_DesktopDimensions()_DisplayPassword()_DotNet_Load()/_DotNet_Unload()_Fibonacci()_FileCompare()_FileCompareContents()_FileNameByHandle()_FilePrefix/SRE()_FindInFile()_GetBackgroundColor()/_SetBackgroundColor()_GetConrolID()_GetCtrlClass()_GetDirectoryFormat()_GetDriveMediaType()_GetFilename()/_GetFilenameExt()_GetHardwareID()_GetIP()_GetIP_Country()_GetOSLanguage()_GetSavedSource()_GetStringSize()_GetSystemPaths()_GetURLImage()_GIFImage()_GoogleWeather()_GUICtrlCreateGroup()_GUICtrlListBox_CreateArray()_GUICtrlListView_CreateArray()_GUICtrlListView_SaveCSV()_GUICtrlListView_SaveHTML()_GUICtrlListView_SaveTxt()_GUICtrlListView_SaveXML()_GUICtrlMenu_Recent()_GUICtrlMenu_SetItemImage()_GUICtrlTreeView_CreateArray()_GUIDisable()_GUIImageList_SetIconFromHandle()_GUIRegisterMsg()_GUISetIcon()_Icon_Clear()/_Icon_Set()_IdleTime()_InetGet()_InetGetGUI()_InetGetProgress()_IPDetails()_IsFileOlder()_IsGUID()_IsHex()_IsPalindrome()_IsRegKey()_IsStringRegExp()_IsSystemDrive()_IsUPX()_IsValidType()_IsWebColor()_Language()_Log()_MicrosoftInternetConnectivity()_MSDNDataType()_PathFull/GetRelative/Split()_PathSplitEx()_PrintFromArray()_ProgressSetMarquee()_ReDim()_RockPaperScissors()/_RockPaperScissorsLizardSpock()_ScrollingCredits_SelfDelete()_SelfRename()_SelfUpdate()_SendTo()_ShellAll()_ShellFile()_ShellFolder()_SingletonHWID()_SingletonPID()_Startup()_StringCompact()_StringIsValid()_StringRegExpMetaCharacters()_StringReplaceWholeWord()_StringStripChars()_Temperature()_TrialPeriod()_UKToUSDate()/_USToUKDate()_WinAPI_Create_CTL_CODE()_WinAPI_CreateGUID()_WMIDateStringToDate()/_DateToWMIDateString()Au3 script parsingAutoIt SearchAutoIt3 PortableAutoIt3WrapperToPragmaAutoItWinGetTitle()/AutoItWinSetTitle()CodingDirToHTML5FileInstallrFileReadLastChars()GeoIP databaseGUI - Only Close ButtonGUI ExamplesGUICtrlDeleteImage()GUICtrlGetBkColor()GUICtrlGetStyle()GUIEventsGUIGetBkColor()Int_Parse() & Int_TryParse()IsISBN()LockFile()Mapping CtrlIDsOOP in AutoItParseHeadersToSciTE()PasswordValidPasteBinPosts Per DayPreExpandProtect GlobalsQueue()Resource UpdateResourcesExSciTE JumpSettings INISHELLHOOKShunting-YardSignature CreatorStack()Stopwatch()StringAddLF()/StringStripLF()StringEOLToCRLF()VSCROLLWM_COPYDATAMore Examples...

Updated: 04/09/2015

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now
Sign in to follow this  
Followers 0