Microsoft KB Archive/831559

= The shortcut (.lnk file) is returned instead of the file or the folder that is referenced by the path in the shortcut in the Open or in the Save dialog box in Windows XP or in Windows Server 2003 =

Article ID: 831559

Article Last Modified on 8/29/2007

-

APPLIES TO


 * Microsoft Windows Server 2003, 64-Bit Datacenter Edition
 * Microsoft Windows Server 2003, Enterprise x64 Edition
 * Microsoft Windows Server 2003, Datacenter Edition (32-bit x86)
 * Microsoft Windows Server 2003, Enterprise Edition (32-bit x86)
 * Microsoft Windows Server 2003, Standard Edition (32-bit x86)
 * Microsoft Windows Server 2003, Web Edition
 * Microsoft Windows XP Home Edition
 * Microsoft Windows XP Professional

-





SYMPTOMS
When you select a shortcut .lnk file in the Open dialog box or in the Save dialog box, the actual .lnk file is returned instead of the folder or the file that is referenced by the path in the shortcut. This problem does not occur when a filter string is specified. In this case, the file or folder that is referenced is returned as expected and as described in the documentation.

Note This problem also occurs when you use the CommonDialog control in Microsoft Visual Basic.



CAUSE
This problem occurs because Microsoft Windows XP and Microsoft Windows Server 2003 handle the OFN_NODEREFERENCELINKS flag incorrectly when a filter string is not specified.



Windows Server 2003
A supported hotfix is not currently available for Windows Server 2003.

Service pack information
To resolve this problem, obtain the latest service pack for Microsoft Windows XP. For additional information, click the following article number to view the article in the Microsoft Knowledge Base:

322389 How to obtain the latest Windows XP service pack

Hotfix information
A supported hotfix is now available from Microsoft. However, this hotfix is intended to correct only the problem that is described in this article. Apply this hotfix only to systems that are experiencing this specific problem. This hotfix might receive additional testing. Therefore, if you are not severely affected by this problem, we recommend that you wait for the next service pack that contains this hotfix.

To resolve this problem, submit a request to Microsoft Online Customer Services to obtain the hotfix. To submit an online request to obtain the hotfix, visit the following Microsoft Web site:

http://go.microsoft.com/?linkid=6294451

Note If additional issues occur or any troubleshooting is required, you might have to create a separate service request. The usual support costs will apply to additional support questions and issues that do not qualify for this specific hotfix. To create a separate service request, visit the following Microsoft Web site:

http://support.microsoft.com/contactus/?ws=support

Prerequisites
You must be running Windows XP Service Pack 1 (SP1) or later to install this hotfix. For additional information about how to obtain the latest Windows XP service pack, click the following article number to view the article in the Microsoft Knowledge Base:../322389How to Obtain the Latest Windows XP Service Pack

File information
The English version of this hotfix has the file attributes (or later) that are listed in the following table. The dates and times for these files are listed in coordinated universal time (UTC). When you view the file information, it is converted to local time. To find the difference between UTC and local time, use the Time Zone tab in the Date and Time tool in Control Panel.   Date         Time      Version        Size     File name 30-Oct-2003 09:27:20  6.0.2800.1316  268,800  Comdlg32.dll



WORKAROUND
To work around this problem if you have access to the source code, specify a filter string to the OPENFILENAME structure before the code calls the GetOpenFileName or the GetSaveFileName function. For example: OPENFILENAME ofn = {0}; ofn.lStructSize = sizeof(OPENFILENAME); ofn.lpstrFilter = TEXT(&quot;Text Files\0*.txt\0All Files\0*.*\0\0&quot;); If you are working with Visual Basic, set a file string to the Filter property of the CommonDialog control. For example: CommonDialog1.Filter = &quot;All Files|*.*&quot;



STATUS
Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the &quot;Applies to&quot; section. This problem was first corrected in Microsoft Windows XP Service Pack 2.



MORE INFORMATION
For additional information, click the following article number to view the article in the Microsoft Knowledge Base:

824684 Description of the standard terminology that is used to describe Microsoft software updates

Keywords: kbhotfixserver kbqfe kbwinxpsp2fix kbqfe kbwinxppresp2fix kbbug kbfix KB831559

-

[mailto:TECHNET@MICROSOFT.COM Send feedback to Microsoft]

© Microsoft Corporation. All rights reserved.