This article was previously published under Q163202
This article has been archived. It is offered "as is" and will no longer be updated.
Applications that use StgOpenStorage() or StgCreateDocFile() API calls toopen several storage files may fail.
This problem does not occur in Windows 95 or Windows NT 3.51.
Windows NT 4.0 limits the number of simultaneously open root storage filesto around 500 PER PROCESS. It should be noted that this is a per processlimit (for example, Process 1 can open 498 root storages, at the same timeProcess 2 can also open 498 root storages, and so on.)
Windows 95 and Windows NT 3.51, use a global shared memory heap of 64M;whereas Windows NT 4.0 uses a per-root-open heap of 4MB. Assuming a 2G useraddress limit for processes, Windows NT 4.0 supports around 500 root opensfor a process.
On Windows NT 4.0 per-root-open heap size was further reduced to 2MBallowing around 1000 opens. A reduction in heap size means applicationswill not be able to open as many sub-storages or keep as many transactedchanges uncommitted.
Microsoft has confirmed this to be a problem in Microsoft Windows NTversion 4.0. This problem was corrected in the latest Microsoft Windows NT4.0 U.S. Service Pack. For information on obtaining the service pack, queryon the following word in the Microsoft Knowledge Base (without the spaces):