Article ID: 269794 - Last Review: March 8, 2011 - Revision: 6.0 MAPI Advise() call returns 0x8007000E (E_OUTOFMEMORY)
This article was previously published under Q269794 SYMPTOMS When you call the Advise function about 7,800 to 7,900 times, the next Advise call may fail with the error 0x8007000E (E_OUTOFMEMORY).
CAUSE Notifications, which are registered by calling Advise, use a shared memory space. By default the heap size is set as
0x100000. If the heap size is exceeded when registering a new notification, the
E_OUTOFMEMORY error is returned. This limit is system-wide; in other words, if you are running two programs that call Advise, the combined maximum for both programs should be less than 7,900. WORKAROUND You can configure the heap size to be as high as 0x800000
by setting the following registry
keys: HKLM\SOFTWARE\Microsoft\Windows Messaging Subsystem Value Name: SharedMemMaxSize Value Type: REG_DWORD Value Data: 0x800000 HKLM\SOFTWARE\Microsoft\Windows Messaging Subsystem\Applications\<MyApp> Value Name: SharedMemMaxSize Value Type: REG_DWORD Value Data: 0x800000 In this scenario, <MyApp> is the name of your application (without the .exe extension). For example, if your application is Mad.exe, enter MAD for the <MyApp> value. | Other Resources Other Support Sites
CommunityGet Help NowArticle Translations
|





















Back to the top