ATTENTION: You are viewing a page formatted for mobile devices; to view the full web page, click HERE.

DonationCoder.com Software > Post New Requests Here

IDEA: Keep some folders out of my "Recent places"

<< < (2/2)

mayurdotca:
My suggestion would be just turn off indexing. It's a big drain on resources for little gain.  Use Everything Search instead.

Instead of Recent Places have some shortcuts you use most often in the favorites.  Trying to control how Windows sticks stuff in it's mru lists is pretty much a lost cause.  About the only thing that works is turning it off altogether.

Anyway, I did about 15 minutes of searching and didn't find any utility that claims to do what you want.

Alternatively you might use this to temporarily hide favorites altogether:

http://www.door2windows.com/windows-7-navigation-pane-customizer-show-hide-rename-items-in-windows-explorer-navigation-pane/

I tried it on my W7 32 bit machine and it seemed to work fine.
Just bring it up and uncheck everything but Computer until the onlookers leave. :)

-MilesAhead (May 23, 2011, 02:46 AM)
--- End quote ---

Would turning off indexing stop the ability to search program files on the start menu?  I do use that feature.  Everything Search doesn't search file contents which is a sometimes useful feature.

I use favorites as well for recent projects I'm working on.  Recent places is a useful function as well, just not for some folders I don't want seen.

mayurdotca:
Add the folders you want to hide to the recent places list.
Go to the folder you specified earlier.
Apply the Deny Read NTFS permission to the shortcut files that you don't want to have displayed.

Now the shell can't display them in the list because you're not allowed to (read) see them.
-Stoic Joker (May 23, 2011, 07:25 AM)
--- End quote ---

I'm constantly looking at new folders.  Would I have to do this each time a new folder is used via Windows Explorer?  This doesn't seem like a great option but a good idea nonetheless. 

Stoic Joker:
Would I have to do this each time a new folder is used via Windows Explorer?-mayurdotca (May 23, 2011, 02:02 PM)
--- End quote ---

Yes and no. Obviously the "Safe" stuff doesn't need fiddled with. But the folders that you want to hide would all need to be given the above treatment.

Assuming the stuff isn't scattered everywhere... :D ...There shouldn't be that many targets to hide.

Might I also suggest using slightly more discreet folder names... ;)

[Nuns Gone Wild Donkey Porn] - Bad Idea.

[Private Vid Files] - Good Idea.

Ya know.

mayurdotca:
Well after not being satisfied with these options, I ended up looking for a directory monitor that would run a VBS file on a regular basis. I found a great little utility from I ended up using: Directory Monitor from http://www.deventerprise.net/Projects.aspx.  I have included a copy of my script for future reference. Perhaps someone will one day turn the vbs into a little executable. :)

My script will

1. Locate all shortcuts in your \AppData\Roaming\Microsoft\Windows\Recent folder
2. Delete all shortcuts that contain drive letters F through Z. 

If you want to customize this yourself to keep shortcuts for some folders, simply delete the areas in this script that contain drive letters you want to retain in your Recent Places or Recent Items. For example, if you want to keep shortcuts to drive H, then delete the following from the script.

CleanPath = "H:\"
If InStr(shortTarget, CleanPath) then
   Set myFileToDelete = objFSO.GetFile(fullname)
   myFileToDelete.Delete
End If


--- Code: Visual Basic ---Dim objShell, objFSO, CleanPath, fileFolderDim userFolder, desktopFolder, custFolder, extensionDim fullname, shortcut, shortTarget Dim WshSSet WshS = WScript.CreateObject("WScript.Shell")Set fso = CreateObject("Scripting.FileSystemObject") 'Expand Environment'Create const's to spare time and placeusrProfile = WshS.ExpandEnvironmentStrings("%UserProfile%")Set objShell = CreateObject("WScript.Shell")Set objFSO = CreateObject("Scripting.FileSystemObject")Set searchFolder = objFSO.GetFolder(usrProfile & "\AppData\Roaming\Microsoft\Windows\Recent")Set custFolder = searchFolder.Files For Each custFile in custFolder        extension = objFSO.GetExtensionName(LCase(custFile.name))        If extension = "lnk" then                'Find full path of target within shortcut                fullname = objFSO.GetAbsolutePathName(custFile)                'See http://www.devguru.com/Technologies/wsh/quickref/wshshell_CreateShortcut.html                'for more information on how this works.                Set shortcut = objShell.CreateShortcut(fullname)                shortTarget = shortcut.TargetPath                Dim myFileToDelete                 CleanPath = "F:\"                If InStr(shortTarget, CleanPath) then                        Set myFileToDelete = objFSO.GetFile(fullname)                        myFileToDelete.Delete                End If                CleanPath = "G:\"                If InStr(shortTarget, CleanPath) then                        Set myFileToDelete = objFSO.GetFile(fullname)                        myFileToDelete.Delete                End If                CleanPath = "H:\"                If InStr(shortTarget, CleanPath) then                        Set myFileToDelete = objFSO.GetFile(fullname)                        myFileToDelete.Delete                End If                CleanPath = "I:\"                If InStr(shortTarget, CleanPath) then                        Set myFileToDelete = objFSO.GetFile(fullname)                        myFileToDelete.Delete                End If                CleanPath = "J:\"                If InStr(shortTarget, CleanPath) then                        Set myFileToDelete = objFSO.GetFile(fullname)                        myFileToDelete.Delete                End If                CleanPath = "K:\"                If InStr(shortTarget, CleanPath) then                        Set myFileToDelete = objFSO.GetFile(fullname)                        myFileToDelete.Delete                End If                CleanPath = "L:\"                If InStr(shortTarget, CleanPath) then                        Set myFileToDelete = objFSO.GetFile(fullname)                        myFileToDelete.Delete                End If                CleanPath = "M:\"                If InStr(shortTarget, CleanPath) then                        Set myFileToDelete = objFSO.GetFile(fullname)                        myFileToDelete.Delete                End If                CleanPath = "N:\"                If InStr(shortTarget, CleanPath) then                        Set myFileToDelete = objFSO.GetFile(fullname)                        myFileToDelete.Delete                End If                CleanPath = "O:\"                If InStr(shortTarget, CleanPath) then                        Set myFileToDelete = objFSO.GetFile(fullname)                        myFileToDelete.Delete                End If                CleanPath = "P:\"                If InStr(shortTarget, CleanPath) then                        Set myFileToDelete = objFSO.GetFile(fullname)                        myFileToDelete.Delete                End If                CleanPath = "Q:\"                If InStr(shortTarget, CleanPath) then                        Set myFileToDelete = objFSO.GetFile(fullname)                        myFileToDelete.Delete                End If                CleanPath = "R:\"                If InStr(shortTarget, CleanPath) then                        Set myFileToDelete = objFSO.GetFile(fullname)                        myFileToDelete.Delete                End If                CleanPath = "S:\"                If InStr(shortTarget, CleanPath) then                        Set myFileToDelete = objFSO.GetFile(fullname)                        myFileToDelete.Delete                End If                CleanPath = "T:\"                If InStr(shortTarget, CleanPath) then                        Set myFileToDelete = objFSO.GetFile(fullname)                        myFileToDelete.Delete                End If                CleanPath = "U:\"                If InStr(shortTarget, CleanPath) then                        Set myFileToDelete = objFSO.GetFile(fullname)                        myFileToDelete.Delete                End If                CleanPath = "V:\"                If InStr(shortTarget, CleanPath) then                        Set myFileToDelete = objFSO.GetFile(fullname)                        myFileToDelete.Delete                End If                CleanPath = "W:\"                If InStr(shortTarget, CleanPath) then                        Set myFileToDelete = objFSO.GetFile(fullname)                        myFileToDelete.Delete                End If                CleanPath = "X:\"                If InStr(shortTarget, CleanPath) then                        Set myFileToDelete = objFSO.GetFile(fullname)                        myFileToDelete.Delete                End If                CleanPath = "Y:\"                If InStr(shortTarget, CleanPath) then                        Set myFileToDelete = objFSO.GetFile(fullname)                        myFileToDelete.Delete                End If                CleanPath = "Z:\"                If InStr(shortTarget, CleanPath) then                        Set myFileToDelete = objFSO.GetFile(fullname)                        myFileToDelete.Delete                End If        End IfNext
How to implement my Recent Places hack described above:

1. Copy the above script into a folder on your computer (anywhere will do) as RecentPlacesSanitizer.vbs
2. Install Directory Monitor
3. Add your Recent Items folder as a folder you want to monitor (c:\users\YOUR USERNAME HERE\AppData\Roaming\Microsoft\Windows\Recent)
3. Specify to run the VB script you have copied above each time this folder changes

Navigation

[0] Message Index

[*] Previous page

Go to full version