By Kevin Weatherman, Updated 2026 for IDA 9.2, Github
- Utility: Utility.h & Utility.cpp, common utility support needed for my plugins. String format, time stamp, exception, platform, etc., support.
- IDA_OggPlayer: Ogg Vorbis audio file format player from memory I use to indicate a long running plugin completion.
A wrapper around Sean Barrett's excellent minimalist stb_vorbis. Allows embedding of audio files that are smaller in size from compression vs raw WAV files.
- IDA_SegmentSelect: Custom segment select widget. To solve the problem where the IDA SDK ask_seg() function only allows for a single selection, where this one allows multiple selections that returns a list.
- IDA_WaitEx: Custom wait box widget. A replacement for the default IDA API show_wait_box() that solves a lot of issues of it, like lacking any kind of progress feedback, unable to minimize IDA while the wait box is, up, etc. Plus facilitates some extra UI pizzazz vs the default generic looking widget.
For any or all of the library projects, add the "include" folder, the single header file and the "lib" folder to your Visual Studio 2022 IDA Pro 9 plugin project. Some example projects and/or see usage in some of my plugin projects for usage examples.
You don't need to install the Qt development environment just to use the libraries since they are prebuilt and the IDA SDK already includes the necessary Qt libraries.
IDA_OggPlayer has no other dependencies other than the IDA SDK headers and libs. While the others will require a Qt development environment if you wish to modify/build them.
- Built using Visual Studio 2022.
- Qt version 6.8.3, which is close enough to IDA's version since we use the IDA's SDK import libs and only extra headers from the Qt includes folder. Note: All that is needed when installing Qt is the "Qt Design Studio" for editing widgets/dialogs, "Qt Creator", and the "Qt Tools Extension" for VS2022. And note for VS2022 you'll probably need to get the extension from the VS marketplace.
The projects look for a "$(IDADIR)" environment variable to find the IDA SDK. For me it's always "_IDADIR=C:\Tools\IDA" since I typically install the SDK into where I install IDA as an "idasdk" folder.
MIT License Copyright © 2009–present Kevin Weatherman
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES, OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT, OR OTHERWISE, ARISING FROM, OUT OF, OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
See MIT License for full details.

