PRB: File Handles Cannot Be Shared Between Programs or DLLsLast reviewed: July 22, 1997Article ID: Q46524 |
3.00 3.10
WINDOWS
kbprg kbprb
The information in this article applies to:
SYMPTOMSAssume that there are two applications, A and B. Application A calls a Dynamic-Link Library (DLL) to open a file. The file pointer (FILE *pFile) is stored on the data segment of the DLL. Application A then calls a function in the DLL to read the record "n" of this file properly. However, if Application B calls the same function in the DLL to read the same record, the record appears as random characters.
RESOLUTIONFile handles cannot be shared between applications or DLLs. Each application has its own file handle table. When an fopen() call is made, a file is taken out of the application's program segment prefix (PSP). For two separate applications to use the same file, each application must make its own fopen() call, file I/O calls, and fclose() call.
|
Additional reference words: 3.00 3.10
© 1998 Microsoft Corporation. All rights reserved. Terms of Use. |