Re: Common dialog control returns wrong filename
From: Randy Birch (rgb_removethis_at_mvps.org)
Date: 09/29/04
- Next message: David Youngblood: "Re: Common dialog control returns wrong filename"
- Previous message: Randy Birch: "Re: Common dialog control returns wrong filename"
- In reply to: Randy Birch: "Re: Common dialog control returns wrong filename"
- Next in thread: David Youngblood: "Re: Common dialog control returns wrong filename"
- Messages sorted by: [ date ] [ thread ]
Date: Wed, 29 Sep 2004 18:48:53 -0400
Here are the messages sent in response to showing the dialog:
uMsg \ uMsg(int) \ wparam \ lparam
CDN_INITDONE \ 78 \ 0 \ 1235464
CDN_SELCHANGE \ 78 \ 0 \ 1236276 'on showing dialog
CDN_SELCHANGE \ 78 \ 0 \ 1236276 'on selecting file aa.txt
'user edits aa.txt to become aa2.txt
CDN_SELCHANGE \ 78 \ 0 \ 1236276 'on clicking the white space in the lv
'OK pressed
File name returned: aa.txt
-- Randy Birch MS MVP Visual Basic http://vbnet.mvps.org/ "Randy Birch" <rgb_removethis@mvps.org> wrote in message news:usrYKWnpEHA.1712@tk2msftngp13.phx.gbl... : This is not a "bug" in VB, but rather an "issue" particular to Windows : common dialogs. It is caused by the listview generating a CDN_SELCHANGE : message when the listview area is clicked. When a white space is clicked the : highlighting is removed from the current selection, causing the : CDN_SELCHANGE message. I suspect code responding to the CDN_SELCHANGE : message interrogates the listview as to its currently-selected item : returning the name of the previously selected item. This is not a bug per : se, but rather the way a listview works. For example, in a VB application : utilizing a listview, querying the Selected property will indicate that an : item has been selected when the listview is first loaded, even if the user : has not actually done so. : : Remember too that Word and Excel do not use the Windows common dialogs, so : their custom implementation to duplicate the functionality of the real : common dialogs may circumvent the problem. I suggest you try the same test : with Notepad, Paint, or any other Windows or third-party application that : uses the real common dialogs. : : -- : : : Randy Birch : MS MVP Visual Basic : http://vbnet.mvps.org/ : : : "Norman Diamond" <ndiamond@nospam.nospam> wrote in message : news:2AF9BB59-EAE5-413F-B975-FC9901C42FA3@microsoft.com... : : In VB6 SP6, VB6 SP5, and possibly others, the common dialog box sometimes : : returns a different filename from the name that is displayed on the : filename : : line. : : : : Write a small program that opens a common dialog box for saving a file. : : When executed, the dialog box shows a list of files presently existing in : the : : directory. Do a single click on one filename and the filename is : : automatically copied to the filename line in the dialog box. Edit the : name : : on the filename line to a nonexistent file, as if you want to save a new : file : : with a slightly different name instead of overwriting the existing file. : : : : Now, if you don't want to see the bug occur, then click immediately on the : : Save button. : : : : But if you do want to see the bug occur, for example if your customer : : complains that your program overwrote their valuable data and you need to : : prove whose fault it is, then you do the following instead. After : slightly : : editing the name in the filename line, click a blank spot inside the list : of : : filenames in the main part of the common dialog box. This wasted click : does : : not select a file. The name shown on the filename line remains as you : edited : : it, it does not automatically change. Then click on the Save button. The : : common dialog control returns to your program a filename of an existing : file : : instead of the new name that you put on the filename line. Your program : will : : destroy your customer's existing data. : : : : My boss just did similar tests with Microsoft Word, Excel, and other : : applications. They do not have this bug. Only VB programs get hit by : this : : bug. :
- Next message: David Youngblood: "Re: Common dialog control returns wrong filename"
- Previous message: Randy Birch: "Re: Common dialog control returns wrong filename"
- In reply to: Randy Birch: "Re: Common dialog control returns wrong filename"
- Next in thread: David Youngblood: "Re: Common dialog control returns wrong filename"
- Messages sorted by: [ date ] [ thread ]