PRB: Dynamic Link Library Search Path Incorrect

ID Number: Q79065

1.00

WINDOWS

docerr

Summary:

The directory search order for DLLs is incorrectly recorded in both

the Microsoft QuickC for Windows (QC/Win) version 1.0 documentation

and the Microsoft Windows Software Development Kit (SDK) version 3.0

documentation. The references are:

"Microsoft QuickC for Windows: C for Windows" page 527

and

"Microsoft Windows Software Development Kit Guide to Programming"

pages 20-25

More Information:

The Windows programming documentation states that Windows searches for

Dynamic Link Libraries (DLLs) in certain directories. In particular,

it states that the order is:

1. Current directory

2. Windows Directory (where WIN.COM is located -- usually \WINDOWS)

3. Windows system directory (usually \WINDOWS\SYSTEM)

4. Other PATH environment directories

5. Other directories mapped on a network

Items 2 and 3 are reversed. Experimentation shows that the Windows

system directory is searched before the Windows directory. This means

that if two versions of a DLL exist, one in each directory, the DLL in

the Windows system directory will be used.

This is a problem because QC/Win installs COMMDLG.DLL in the Windows

directory. Old versions of COMMDLG.DLL may exist in the Windows system

directory. The old version will be used by QC/Win causing errors in

file access and creation.

Additional reference words: 1.00 3.00