Invantive Control for Excel drives Microsoft Excel through COM. A failure on that boundary surfaces as a message code in the `itgenclr` family, followed by an `HRESULT` and a call stack. The code is the translation of the `HRESULT`, so the same code covers a family of causes and the `HRESULT` says which one.
These are seldom failures of the model or of the connected platform. They are failures of the conversation between the add-in and Microsoft Excel, Microsoft Outlook or the operating system.
## The Connection with Microsoft Excel Is Lost
- `itgenclr001` and `itgenclr015` with `0x80010108 (RPC_E_DISCONNECTED)`: the object being addressed no longer has a client. Microsoft Excel, or the workbook, went away underneath the add-in.
- `itgenclr001` with `0x8001010A (RPC_E_SERVERCALL_RETRYLATER)`: the message filter reports that Microsoft Excel is busy. Excel refuses the call because it is in cell edit mode, is recalculating, or has a dialogue open.
Both are timing failures and both are intermittent. Close Microsoft Excel completely, check in Task Manager that no `EXCEL.EXE` remains, start Excel on its own and only then open the workbook. Opening a workbook straight from an e-mail attachment is a reliable way to provoke the first of the two, since Excel is then still starting while the workbook loads.
## Memory Runs Out
`itgenclr007` with `0x8007000E (E_OUTOFMEMORY)` means the process is using more memory than it can address. The number of formulas in a workbook, not the amount of memory in the device, decides when this happens: a 32-bit Microsoft Excel gives the add-in roughly one gigabyte no matter how much memory the device holds.
- Use a 64-bit Microsoft Excel where possible.
- Where 32-bit is a given, the Large Address Aware capability raises the limit from about one gigabyte to a little over two.
- Retrieve less: a block or a query which fetches only the rows actually used costs far less than one which fetches everything and filters in Excel.
## Microsoft Outlook Gets in the Way
The Outlook driver is active whenever Microsoft Outlook runs on the same device, since mailboxes are then a platform which can be queried. Enumerating those mailboxes fails when one of them is damaged or unreachable, which surfaces while Invantive Control for Excel is building the list of partitions:
- `itgenclr130` and `itgenclr158` with `0xC1F40111`;
- `itgenclr010`, a COM object of Outlook which cannot be cast to its own interface.
Close Microsoft Outlook while working in Microsoft Excel, or open each mailbox in Outlook in turn to find the one which no longer opens. Answering "OK" on the message is sometimes enough to get past it.
## Publishing Fails
`itgenclr013` reports that the syntax of a name is not correct. The workbook holds a defined name which Microsoft Excel itself created, typically one beginning with `_xlfn.`, left behind by an older version of Excel. Such a name is invisible in the Name Manager and cannot easily be removed by hand. Recent releases delete it themselves.
## A Component Cannot Be Loaded
`itgenclr060` reports that a DLL such as `wpfgfx_v0400.dll` cannot be loaded. The Windows presentation components on which the windows of the product are drawn are damaged or absent. This is repaired at the level of the operating system and of the .NET installation, not in Invantive Control for Excel.
## What to Do with an Unfamiliar Code
The `itgenclr` codes are assigned per `HRESULT`, and new ones are added as failures are recognised: `itgenclr130` became `itgenclr158` for the Outlook case precisely so that the cause is visible from the code. A code which this documentation does not name is therefore not necessarily unknown to the product.
Report it with the message identification and the time from the message window, through "Request Support" on the [[Invantive Control for Excel/User Interface/Control Ribbon|Control ribbon]], and check first whether a newer release exists: a considerable share of these codes were traced to a defect and closed in a later release.