Windows 7's search function is great when it works, but the results are often unpredictable. Here's how to make Windows search work the way you want it to.
Perform Your Search From The Start Menu
For the longest time, I'd open up Windows Explorer and start typing in the search bar, and I'd rarely find anything. This is because Windows Explorer only searches the folder you're in -- not your entire computer. If you have Libraries open in Explorer, it will only search your libraries (which, to be fair, it says in the search bar -- but it's very easy to blow past that). If you aren't sure where the file is that you're looking for, open up the Start menu and search from there. It will search your entire computer for files, folders, and programs matching those terms. If you want more detailed results, you can then click "See More Results" to bring up a detailed search results window. But thinking that you can shortcut your way to the detailed results by opening up Explorer first will get you nowhere.
Search The Contents Of Your Files
By default, Windows does search the contents of your files, meaning if your search term shows up inside a document (but not in the file name), it will show up in search results. However, for some reason, this only works some of the time. I've had certain files come up for one search term and not another even though both terms appeared somewhere in the document. I found the best way to improve content searching is to open up Windows Explorer and head to organise > Folder and Search Options, then go to the Search tab. From there, check the "Always search file names and contents" radio button.
This feature doesn't seem to do at all what it describes in my tests. When the default option is checked, it can't always find the contents of indexed files. When I check the second option, it seems to find all the contents of any file I search for, which is exactly what I want (and without significant speed decreases, as it claims). Despite references to the contrary, neither option searches unindexed locations. I've tested this on two separate computers and it seems to work fine, despite what the option says it does -- so give it a shot and see what happens for you. And if anyone can explain to me what this option is supposed to do -- if different than the above -- I'm all ears.
Choose Which File Extensions Can Be Searched By Content
Now that you can search by the contents of your files, you've probably found that a few of them still aren't searchable -- most notably file types Windows doesn't think you want to search, like .conf or .sh files (if you're a Cygwin user). To search the contents of a file Windows doesn't know, go to the Start Menu and search for "Indexing Options". Choose the top result that comes up and then click the Advanced button. Under the File Types tab, you can add a new extension to the list, or edit any extension on the list to index the contents of the file. You can also uncheck any file extension to stop search from indexing that file type.
Add Folders To Your Index
By default, Windows has a pretty good idea of what locations you want indexed. It searches your Start Menu, your Users folder, and your Offline files. If you have moved any folders in your Users folder, or are storing something useful elsewhere on your drive, you can add that folder to the index in one of two ways. Note that the more folders you add, the slower Windows search becomes, so don't just add your entire C: drive -- pick your folders carefully to keep it fast and useful.
The easiest way is to include it in one of your libraries. Windows Explorer automatically indexes all your libraries, so either create a new one or right-click on an applicable library and go to Properties to add a folder to it. That folder will then be added to your index.
Alternatively, you can go back to Indexing Options (by searching for it in the Start Menu) and clicking the Modify button to add a new folder to the index. This is useful if you want to index a folder but don't want it to appear in any of your Windows 7 libraries.
Manually Type In Your Search Filters
If you want to search within a specific folder, you might find that searching from Windows Explorer's search box offers you a number of search modifiers to refine your terms, like "Date Modified", "Kind", "Type", and more. What you may not realise is that these filters change depending on what folder you're in. Usually it's helpful, changing them to Artist/Album/Title in the Music folder, or "Date Taken" and "Tags" in the pictures folder. If you ever want a filter that isn't shown, however, you can always just type it in yourself (e.g.
datemodified:last week invoice1). In fact, it isn't unlike searching Google in this way -- you can also use AND and OR operators too, plus quotes if you're looking for a specific phrase. You can also change what type of file a certain folder is optimised for, which will change the search filters available to you in that folder. For more examples of advanced filters and operators, check out Microsoft's page on the subject.
These tips are simple, and some of them may seem obvious to veteran Windows user, but I've been frustrated with Search for months and these tips have made it a million times more useful. Of course, if you really want speedy and powerful searches, you could try a program like Everything, which is an awesome search system. Got any of your own tips for improving Windows' search feature? Sound off in the comments below.