Microsoft KB Archive/196141

= PRB: Problems Using Intrinsic File System Controls =

Article ID: 196141

Article Last Modified on 5/13/2003

-

APPLIES TO


 * Microsoft Visual Basic 5.0 Learning Edition
 * Microsoft Visual Basic 6.0 Learning Edition
 * Microsoft Visual Basic 5.0 Professional Edition
 * Microsoft Visual Basic 6.0 Professional Edition
 * Microsoft Visual Basic 5.0 Enterprise Edition
 * Microsoft Visual Basic 6.0 Enterprise Edition

-



This article was previously published under Q196141



SYMPTOMS
When you are using the intrinsic Visual Basic file system controls (for example, DriveListBox, DirListBox, FileListBox), some or all of your files are not listed. This usually occurs when you are trying to access files on a network server, but can occur locally under some circumstances.



CAUSE
The following statement is copied from the Visual Basic 5.0 Programmer's Guide (page 67) and you can also find it in the File System Controls section of the Forms, Controls, and Menus topic in Books Online:

Note: These controls are provided primarily for backward compatibility with applications created in earlier versions of Visual Basic. The common dialog control provides an easier method of working with file access.

For more information on common dialog control, see "Miscellaneous Controls" later in this chapter.

These controls are old technology. They were not designed for, nor tested with, some of the new operating and network system software. Specifically, these controls rely on the existence of 8.3 file and directory names. Any set of circumstances that result in the unavailability of 8.3 names will cause problems. For example, you can disable the creation of 8.3 file or directory names on a Windows NT Server. If this happens, the intrinsic controls will only see those directories or files that have 8.3 names.



RESOLUTION
As stated in the Visual Basic 5.0 Programmer's Guide, the best resolution is to use the CommonDialog control. Not only is it more likely to work, it also makes your application's user interface consistent with other Windows applications.

Even if you do not want to use the CommonDialog, it can help you determine the specific nature of the problem you are experiencing. To demonstrate this, try using the CommonDialog to access the directories or files that are causing the problem when you are using the intrinsic controls. If the CommonDialog can display these files, the problem is most likely the result of the limitations of the intrinsic controls. If the CommonDialog fails, the problem is most likely located in the computer or network file system configuration.



STATUS
This behavior is by design.

