http://bugs.winehq.org/show_bug.cgi?id=4322
------- Additional Comments From mjung@iss.tu-darmstadt.de 2006-20-01 01:35 ------- The problem here is as follows: The first time you start wine without having an .wine directory already, wineprefixcreate will create it for you. It will map drive Z: to '/'. When shell32.dll is registered during this process, it queries the HOME environment variable and maps the result to a DOS path, which would be something like 'Z:\home\joe'. Furthermore, it registers the path for the Desktop shell folder to 'Z:\home\joe\Desktop'. If you now remove the Z: drive afterwards, the Desktop shell folder's path doesn't exist any more and thus won't initialize any more. This is bad, since it is the entry point for all shell namespace stuff. Therefore, the file dialog and browsing on winecfg's drives tab is broken.
We have to implement some fallback code somewhere around shell32/shellpath/SHGetFolderPathW for the case that the desktop folder path doesn't exist. A save bet would probably be 'C:\windows\profiles\All Users\Desktop'.