# C++ SDK & IDAPython

**URL:** https://community.hex-rays.com/c/idas/api-sdk/15.md

[Latest](https://community.hex-rays.com/latest.md) · [Categories](https://community.hex-rays.com/categories.md) · [Tags](https://community.hex-rays.com/tags.md)

---

## [C++ SDK and IDAPython category](https://community.hex-rays.com/t/c-sdk-and-idapython-category/36)

<div class="topic-metadata">

**Author:** [@teresa\_hexrays](https://community.hex-rays.com/u/teresa_hexrays)\
**Replies:** 0\
**Last updated:** [January 3, 2025, 4:08pm UTC](https://community.hex-rays.com/t/c-sdk-and-idapython-category/36 "2025-01-03T16:08:19Z")

</div>

Here’s the one-stop shop for all discussions about the IDAPython API and C++ SDK, whether you get stuck when writing your plugins or have feedback about the endpoints’ usability. Go ahead and: ask questions on how to …

---

## [Custom decompiler based on hexrays SDK](https://community.hex-rays.com/t/custom-decompiler-based-on-hexrays-sdk/356)

<div class="topic-metadata">

**Author:** [@void\_17](https://community.hex-rays.com/u/void_17)\
**Replies:** 11\
**Last updated:** [June 30, 2026, 3:04pm UTC](https://community.hex-rays.com/t/custom-decompiler-based-on-hexrays-sdk/356 "2026-06-30T15:04:45Z")

</div>

Hello! I want to decompile SuperH-4 executables for Dreamcast with IDA Pro. However, IDA currently does not support decompiling SuperH-4 platform. I feel like I am pretty confident with C++ and had already done some plug…

---

## [How to check whether a function is marked as decompiled?](https://community.hex-rays.com/t/how-to-check-whether-a-function-is-marked-as-decompiled/680)

<div class="topic-metadata">

**Author:** [@0x154](https://community.hex-rays.com/u/0x154)\
**Replies:** 2\
**Last updated:** [February 19, 2026, 6:31pm UTC](https://community.hex-rays.com/t/how-to-check-whether-a-function-is-marked-as-decompiled/680 "2026-02-19T18:31:56Z")

</div>

Hi everyone! I’m trying to make a plugin which dumps function pseudocode if the function has been marked as decompiled however, I’m struggling to find the API which tells me if function has been marked as decompiled. Do…

---

## [Explanation of multiple INTERR codes](https://community.hex-rays.com/t/explanation-of-multiple-interr-codes/598)

<div class="topic-metadata">

**Author:** [@int](https://community.hex-rays.com/u/int)\
**Replies:** 23\
**Last updated:** [December 5, 2025, 2:22pm UTC](https://community.hex-rays.com/t/explanation-of-multiple-interr-codes/598 "2025-12-05T14:22:18Z")

</div>

Hey, I’m working on an AVX lifter and constantly run into issues with hexrays probably stumbling over my emitted microcode. Concrete example from a small program I wrote to test AVX coverage in my lifter: ; ==========…

---

## [How to show Please wait box](https://community.hex-rays.com/t/how-to-show-please-wait-box/609)

<div class="topic-metadata">

**Author:** [@sun4ouce](https://community.hex-rays.com/u/sun4ouce)\
**Replies:** 4\
**Last updated:** [December 1, 2025, 9:33am UTC](https://community.hex-rays.com/t/how-to-show-please-wait-box/609 "2025-12-01T09:33:26Z")

</div>

Hello. I’m writing IDA Debugger plugin. And i want IDA shows box with text “Running” and Suspend button when the process is running. I think it’s something like show\_wait\_box, but this one doesn’t have Suspend button. …

---

## [IDE Autocomplete for Python SDK](https://community.hex-rays.com/t/ide-autocomplete-for-python-sdk/606)

<div class="topic-metadata">

**Author:** [@williballenthin](https://community.hex-rays.com/u/williballenthin)\
**Replies:** 0\
**Last updated:** [November 24, 2025, 11:46am UTC](https://community.hex-rays.com/t/ide-autocomplete-for-python-sdk/606 "2025-11-24T11:46:33Z")

</div>

Here’s a short guide on configuring autocomplete for the IDA Python SDK in your IDE. If you have further ideas, tweaks, configurations - please don’t hesitate to continue the thread below! For LSP-based editors, includ…

---

## [How to check if idapythonrc.py is running in IDA Pro or idalib?](https://community.hex-rays.com/t/how-to-check-if-idapythonrc-py-is-running-in-ida-pro-or-idalib/297)

<div class="topic-metadata">

**Author:** [@williballenthin](https://community.hex-rays.com/u/williballenthin)\
**Replies:** 3\
**Last updated:** [October 8, 2025, 9:46am UTC](https://community.hex-rays.com/t/how-to-check-if-idapythonrc-py-is-running-in-ida-pro-or-idalib/297 "2025-10-08T09:46:17Z")

</div>

I’ve found that idapythonrc.py is loaded both by IDA Pro (the user interface) and idalib. However, there’s some configuration that I only want applied when running within IDA Pro (the user interface), such as pre-configu…

---

## [Build IDA SDK for Android](https://community.hex-rays.com/t/build-ida-sdk-for-android/513)

<div class="topic-metadata">

**Author:** [@sun4ouce](https://community.hex-rays.com/u/sun4ouce)\
**Replies:** 1\
**Last updated:** [October 2, 2025, 12:35pm UTC](https://community.hex-rays.com/t/build-ida-sdk-for-android/513 "2025-10-02T12:35:06Z")

</div>

Why don’t you have any instructions building debug servers for mobile platforms? How can i build debug server for Android?

---

## [IDA Python, get selected text](https://community.hex-rays.com/t/ida-python-get-selected-text/279)

<div class="topic-metadata">

**Author:** [@Harding](https://community.hex-rays.com/u/Harding)\
**Replies:** 4\
**Last updated:** [September 22, 2025, 11:07am UTC](https://community.hex-rays.com/t/ida-python-get-selected-text/279 "2025-09-22T11:07:02Z")

</div>

I want to get the selected text from a given widget. I know about the example dump\_selection.py but there are at least 2 major bugs in that code and I have tried to fix it but reading that code is insane. How can there n…

---

## [How to select architecture using idalib?](https://community.hex-rays.com/t/how-to-select-architecture-using-idalib/174)

<div class="topic-metadata">

**Author:** [@Mas0n](https://community.hex-rays.com/u/Mas0n)\
**Replies:** 25\
**Last updated:** [September 16, 2025, 3:03am UTC](https://community.hex-rays.com/t/how-to-select-architecture-using-idalib/174 "2025-09-16T03:03:16Z")

</div>

I want to analysis a Universal macOS Binary, it’s include a multi-arch binary (x64 & ARM), and when I use idalib in python, it’s cannot be select arch manually. e.g. import idapro # copy /System/Applications/Books.app/…

---

## [Issue with get\_func\_name](https://community.hex-rays.com/t/issue-with-get-func-name/383)

<div class="topic-metadata">

**Author:** [@berk000](https://community.hex-rays.com/u/berk000)\
**Replies:** 3\
**Last updated:** [July 18, 2025, 3:11pm UTC](https://community.hex-rays.com/t/issue-with-get-func-name/383 "2025-07-18T15:11:20Z")

</div>

Hello everyone, I’m trying to make a simple plugin that prints out all of the function names from the loaded binary using IDA’s C++ SDK. Get\_func\_qty returns the correct number of functions, but no matter what I try, ge…

---

## [How do you set call type to cexpr\_t from ida-python](https://community.hex-rays.com/t/how-do-you-set-call-type-to-cexpr-t-from-ida-python/386)

<div class="topic-metadata">

**Author:** [@yoavst](https://community.hex-rays.com/u/yoavst)\
**Replies:** 3\
**Last updated:** [July 14, 2025, 8:26am UTC](https://community.hex-rays.com/t/how-do-you-set-call-type-to-cexpr-t-from-ida-python/386 "2025-07-14T08:26:23Z")

</div>

From the GUI you can use “set call type” or “force call type” to change the call type of a cexpr\_t in the decompilation. I would like to create a plugin that uses PAC signature for iOS to force call typed from idapython…

---

## [Updating ClassInformer, the role of the IDA RTTI plugin et al](https://community.hex-rays.com/t/updating-classinformer-the-role-of-the-ida-rtti-plugin-et-al/120)

<div class="topic-metadata">

**Author:** [@Special-K](https://community.hex-rays.com/u/Special-K)\
**Replies:** 7\
**Last updated:** [May 7, 2025, 9:40pm UTC](https://community.hex-rays.com/t/updating-classinformer-the-role-of-the-ida-rtti-plugin-et-al/120 "2025-05-07T21:40:01Z")

</div>

Pretty advanced/internal question: Getting close to updating ClassInformer to IDA Pro 9. My IDA Windows binary plugin that finds fixes and labels RTTI structures, and locates vftables and displays them. I see most of t…

---

## [Subscribe to FLIRT Signature updates?](https://community.hex-rays.com/t/subscribe-to-flirt-signature-updates/294)

<div class="topic-metadata">

**Author:** [@Still](https://community.hex-rays.com/u/Still)\
**Replies:** 1\
**Last updated:** [April 23, 2025, 12:57pm UTC](https://community.hex-rays.com/t/subscribe-to-flirt-signature-updates/294 "2025-04-23T12:57:15Z")

</div>

Hey there, I wanted to check if there is a way of getting notified whenever the FLIRT Signature Bundle is updated (if ever)? It doesn’t seem super practical to be checking the download center every once a while

---

## [Ida\_loader.gen\_file, does it throw exceptions?](https://community.hex-rays.com/t/ida-loader-gen-file-does-it-throw-exceptions/293)

<div class="topic-metadata">

**Author:** [@Harding](https://community.hex-rays.com/u/Harding)\
**Replies:** 1\
**Last updated:** [April 22, 2025, 9:08am UTC](https://community.hex-rays.com/t/ida-loader-gen-file-does-it-throw-exceptions/293 "2025-04-22T09:08:58Z")

</div>

In your example here you do not have any try around it but check the retval while here you do not check the return value but rather wrap it in a try catch. Which one is correct?

---

## [Any idb\_event::renaming\_struc replacement?](https://community.hex-rays.com/t/any-idb-event-renaming-struc-replacement/285)

<div class="topic-metadata">

**Author:** [@bes](https://community.hex-rays.com/u/bes)\
**Replies:** 4\
**Last updated:** [April 15, 2025, 3:34pm UTC](https://community.hex-rays.com/t/any-idb-event-renaming-struc-replacement/285 "2025-04-15T15:34:33Z")

</div>

Is there some idb\_event::renaming\_struc replacement in IDA9+ C++ SDK? I wanted to do additional renaming when name of type is changed.

---

## [C++ SDK Question when use til](https://community.hex-rays.com/t/c-sdk-question-when-use-til/280)

<div class="topic-metadata">

**Author:** [@Mas0n](https://community.hex-rays.com/u/Mas0n)\
**Replies:** 4\
**Last updated:** [April 11, 2025, 2:23am UTC](https://community.hex-rays.com/t/c-sdk-question-when-use-til/280 "2025-04-11T02:23:51Z")

</div>

when I load a Windows PE file, IDA auto load 2 til: ntapi64\_win7 & mssdk64\_win7 and when I use type MACRO\_ERROR, I found that it was being defined twice. so when I set num expr to enum, it’s will be confused, general i…

---

## [ida\_kernwin.Choose window closing during debug start/exit](https://community.hex-rays.com/t/ida-kernwin-choose-window-closing-during-debug-start-exit/125)

<div class="topic-metadata">

**Author:** [@MJS](https://community.hex-rays.com/u/MJS)\
**Replies:** 4\
**Last updated:** [March 24, 2025, 10:41am UTC](https://community.hex-rays.com/t/ida-kernwin-choose-window-closing-during-debug-start-exit/125 "2025-03-24T10:41:15Z")

</div>

I created a plugin that uses a ida\_kernwin.Choose window as the main interface. When this window is open and I enter a debug session, it automatically gets closed. When it’s opened after entering a debug session and the …

---

## [Script obj model stabilization?](https://community.hex-rays.com/t/script-obj-model-stabilization/222)

<div class="topic-metadata">

**Author:** [@d11](https://community.hex-rays.com/u/d11)\
**Replies:** 0\
**Last updated:** [March 3, 2025, 7:22pm UTC](https://community.hex-rays.com/t/script-obj-model-stabilization/222 "2025-03-03T19:22:51Z")

</div>

Hi, I was wondering if there any plans to stabilize the ida python script object model? I would extend this question to the C++ api as well. I have been looking at some go reversing tools and testing out various scrip…

---

## [How to collapse specific \`if\` statements using IDA Python?](https://community.hex-rays.com/t/how-to-collapse-specific-if-statements-using-ida-python/187)

<div class="topic-metadata">

**Author:** [@None](https://community.hex-rays.com/u/None)\
**Replies:** 2\
**Last updated:** [February 27, 2025, 2:22am UTC](https://community.hex-rays.com/t/how-to-collapse-specific-if-statements-using-ida-python/187 "2025-02-27T02:22:42Z")

</div>

In the IDA decompiler view, you can collapse an if statement by right-clicking and selecting “Collapse Item” while the cursor is on it. However, I want to collapse all specific if statements using IDA Python. While I can…

---

## [Decorate edges with counts](https://community.hex-rays.com/t/decorate-edges-with-counts/95)

<div class="topic-metadata">

**Author:** [@qiqi](https://community.hex-rays.com/u/qiqi)\
**Replies:** 1\
**Last updated:** [January 27, 2025, 10:26am UTC](https://community.hex-rays.com/t/decorate-edges-with-counts/95 "2025-01-27T10:26:21Z")

</div>

Is there a way to count the number of times an edge has been traversed in the graph view drawn from traces and display this info beside the edge. I know it is possible to show the number of times a particular block has …
