SearchAPI is a small program designed to assist with locating information about the win32 API. It contains information primarily about functions, structures, messages, and notifications.

Use is based on the concept of a filter. You type in some text and get a list of entries that match the text you typed. Once you've located a function of interest, you may double-click the list item, press the space bar, or click on the detail pane to search for information on the function. In addition if you press Control+C the C syntax for the command will be placed on the clipboard.

On a configuration screen you can change the way the filter interacts with the list of entrys by selecting by category or type. In addition you can choose which fields to search through and whether the searches should be case sensitive or not. Once you've located an API, you may wish to refer to the original MSDN documentation. You can choose whether to use an internal direct link or MSDN, Google, or Bing search.

When you're first exploring the API, the number of functions may be overwhelming. To that end there is also a tag cloud, that will show you the frequency of words and let you choose an API fragment to filter on. To access the tag cloud press control+T or click on the cloud button. The fragments are chosen by breaking the API function names apart based on their camel casing. If you have an active cloud filter on, the cloud button will be colored. To remove a cloud filter, on the tag cloud screen click the button with the - or press the enter key. The tag cloud filter is always case sensitive.

You can activate the program from anywhere in Windows by pressing the Windows+A key. Display this help, by pressing the F1 key in the application.

Settings for the program are kept in the searchAPI.ini file. The program will remember it's last location and size. What you were last searching for, and most other settings, including any cloud filters you have set. Values in the ini file are saved/updated when the program exits.

The information this program uses is stored as a tab separated file in api.txt. As such you can edit, add to, or remove entries from the text files so long as you maintain the format of the information. The application currently does no sorting of the information, so if you change the file, be sure to sort it the way you want it to appear. The fields in the tab separated file are: Category, Type, Function, Link, Description, and Syntax, in that order. In addition, in the description field where you would like a link break, place a ~ character.

Finally, the application is also designed to be "friendly" with external programs. You can communicate either via the command line or by sending windows messages to the application.

Press F1 in the application for more help