Microsoft KB Archive/887708

= FIX: A storage volume may be allowed to be unmounted and formatted in Windows CE .NET =

Article ID: 887708

Article Last Modified on 5/27/2005

-

APPLIES TO


 * Microsoft Windows CE .NET 4.2

-





SYMPTOMS
In Microsoft Windows CE .NET 4.2, a storage volume may be allowed to be unmounted and formatted even though the storage volume was not designed to be unmounted and formatted. This problem occurs after you apply update 040318 that is mentioned in the Microsoft Knowledge Base article 835949. For additional information about the update, click the following article number to view the article in the Microsoft Knowledge Base:

835949 FIX: The Fsdmgr.dll module may generate an exception during a WriteFile operation when a volume is dismounted in Windows CE .NET 4.2



CAUSE
Before the update that is mentioned in the &quot;Symptoms&quot; section is installed, Storage Manager does not dismount a storage volume if the call to the FSD_UnmountDisk file-system-driver function returns a failure. Returning a failure from this function has been used as a technique to help protect a volume from being formatted. After the update is applied, you must use a different technique to prevent a volume from being unmounted and formatted. However, this technique was not fully implemented in the update.



Software update information
A supported software update is now available from Microsoft as Windows CE 4.2 Core OS QFE 887708. To resolve this problem immediately, click the following article number for information about obtaining Windows CE Platform Builder and core operating system software updates:

837392 How to locate core operating system fixes for Microsoft Windows CE Platform Builder products

Prerequisites
This update is supported only if all previously issued updates for this product have also been installed.

Restart requirement
After you install this update, you must perform a clean build of the whole platform. To clean the platform, click Clean on the Build menu. To build the platform, click Build Platform on the Build menu. You do not have to restart your computer after you apply this update.

Update replacement information
This update does not replace any other updates.

File information
The English version of this package has the file attributes (or later) that are listed in the following table.   Date         Time   Version            Size    File name --  20-Nov-2004  00:15  4.2.4.1112      1,002,232  Wincepb42-041112-kb887708-armv4.exe 20-Nov-2004 00:15  4.2.4.1112      1,002,232  Wincepb42-041112-kb887708-armv4i.exe 20-Nov-2004 00:15  4.2.4.1112      1,018,616  Wincepb42-041112-kb887708-mipsii.exe 20-Nov-2004 00:15  4.2.4.1112      1,018,616  Wincepb42-041112-kb887708-mipsii_fp.exe 20-Nov-2004 00:15  4.2.4.1112      1,022,712  Wincepb42-041112-kb887708-mipsiv.exe 20-Nov-2004 00:15  4.2.4.1112      1,022,712  Wincepb42-041112-kb887708-mipsiv_fp.exe 20-Nov-2004 00:14  4.2.4.1112        989,944  Wincepb42-041112-kb887708-sh3.exe 20-Nov-2004 00:14  4.2.4.1112        989,944  Wincepb42-041112-kb887708-sh4.exe 20-Nov-2004 00:14  4.2.4.1112        936,696  Wincepb42-041112-kb887708-x86.exe The English version of this update has the file attributes (or later file attributes) 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 --

Path: Public\Common\Oak\Files 18-Nov-2004 03:46                    136,183  Common.reg

Path: Public\Common\Oak\Inc 19-Nov-2004 18:25                     11,107  Pwindbas.h

Path: Public\Common\Oak\Lib\Armv4\Debug 19-Nov-2004 18:21                     77,030  Fsdmain.lib 19-Nov-2004 18:21                     86,016  Fsdmain.pdb 19-Nov-2004 18:21                    199,546  Fsmain.lib 19-Nov-2004 18:21                     69,632  Fsmain.pdb 19-Nov-2004 18:21                    353,166  Storemgr.lib 19-Nov-2004 18:21                     94,208  Storemgr.pdb

Path: Public\Common\Oak\Lib\Armv4\Retail 19-Nov-2004 18:21                     59,534  Fsdmain.lib 19-Nov-2004 18:21                     86,016  Fsdmain.pdb 19-Nov-2004 18:21                    171,216  Fsmain.lib 19-Nov-2004 18:21                     69,632  Fsmain.pdb 19-Nov-2004 18:21                    307,280  Storemgr.lib 19-Nov-2004 18:21                     86,016  Storemgr.pdb

Path: Public\Common\Oak\Lib\Armv4i\Debug 19-Nov-2004 18:22                     77,102  Fsdmain.lib 19-Nov-2004 18:22                     86,016  Fsdmain.pdb 19-Nov-2004 18:21                    199,826  Fsmain.lib 19-Nov-2004 18:21                     69,632  Fsmain.pdb 19-Nov-2004 18:22                    353,846  Storemgr.lib 19-Nov-2004 18:22                     94,208  Storemgr.pdb

Path: Public\Common\Oak\Lib\Armv4i\Retail 19-Nov-2004 18:21                     59,632  Fsdmain.lib 19-Nov-2004 18:21                     86,016  Fsdmain.pdb 19-Nov-2004 18:21                    171,428  Fsmain.lib 19-Nov-2004 18:21                     69,632  Fsmain.pdb 19-Nov-2004 18:22                    307,786  Storemgr.lib 19-Nov-2004 18:22                     86,016  Storemgr.pdb

Path: Public\Common\Oak\Lib\Mipsii\Debug 19-Nov-2004 18:22                     79,590  Fsdmain.lib 19-Nov-2004 18:22                     86,016  Fsdmain.pdb 19-Nov-2004 18:22                    218,244  Fsmain.lib 19-Nov-2004 18:22                     69,632  Fsmain.pdb 19-Nov-2004 18:22                    362,678  Storemgr.lib 19-Nov-2004 18:22                     94,208  Storemgr.pdb

Path: Public\Common\Oak\Lib\Mipsii\Retail 19-Nov-2004 18:22                     61,384  Fsdmain.lib 19-Nov-2004 18:22                     86,016  Fsdmain.pdb 19-Nov-2004 18:22                    166,098  Fsmain.lib 19-Nov-2004 18:22                     69,632  Fsmain.pdb 19-Nov-2004 18:22                    319,232  Storemgr.lib 19-Nov-2004 18:22                     86,016  Storemgr.pdb

Path: Public\Common\Oak\Lib\Mipsii_fp\Debug 19-Nov-2004 18:23                     79,626  Fsdmain.lib 19-Nov-2004 18:23                     86,016  Fsdmain.pdb 19-Nov-2004 18:22                    218,254  Fsmain.lib 19-Nov-2004 18:22                     69,632  Fsmain.pdb 19-Nov-2004 18:23                    362,714  Storemgr.lib 19-Nov-2004 18:23                     94,208  Storemgr.pdb

Path: Public\Common\Oak\Lib\Mipsii_fp\Retail 19-Nov-2004 18:22                     61,410  Fsdmain.lib 19-Nov-2004 18:22                     86,016  Fsdmain.pdb 19-Nov-2004 18:22                    166,106  Fsmain.lib 19-Nov-2004 18:22                     69,632  Fsmain.pdb 19-Nov-2004 18:22                    319,290  Storemgr.lib 19-Nov-2004 18:22                     86,016  Storemgr.pdb

Path: Public\Common\Oak\Lib\Mipsiv\Debug 19-Nov-2004 18:23                     79,894  Fsdmain.lib 19-Nov-2004 18:23                     86,016  Fsdmain.pdb 19-Nov-2004 18:23                    220,858  Fsmain.lib 19-Nov-2004 18:23                     69,632  Fsmain.pdb 19-Nov-2004 18:23                    366,946  Storemgr.lib 19-Nov-2004 18:23                     94,208  Storemgr.pdb

Path: Public\Common\Oak\Lib\Mipsiv\Retail 19-Nov-2004 18:23                     61,596  Fsdmain.lib 19-Nov-2004 18:23                     86,016  Fsdmain.pdb 19-Nov-2004 18:23                    167,288  Fsmain.lib 19-Nov-2004 18:23                     69,632  Fsmain.pdb 19-Nov-2004 18:23                    321,346  Storemgr.lib 19-Nov-2004 18:23                     86,016  Storemgr.pdb

Path: Public\Common\Oak\Lib\Mipsiv_fp\Debug 19-Nov-2004 18:23                     79,930  Fsdmain.lib 19-Nov-2004 18:23                     86,016  Fsdmain.pdb 19-Nov-2004 18:23                    220,868  Fsmain.lib 19-Nov-2004 18:23                     69,632  Fsmain.pdb 19-Nov-2004 18:24                    366,982  Storemgr.lib 19-Nov-2004 18:24                     94,208  Storemgr.pdb

Path: Public\Common\Oak\Lib\Mipsiv_fp\Retail 19-Nov-2004 18:23                     61,622  Fsdmain.lib 19-Nov-2004 18:23                     86,016  Fsdmain.pdb 19-Nov-2004 18:23                    167,296  Fsmain.lib 19-Nov-2004 18:23                     69,632  Fsmain.pdb 19-Nov-2004 18:23                    321,404  Storemgr.lib 19-Nov-2004 18:23                     86,016  Storemgr.pdb

Path: Public\Common\Oak\Lib\Sh3\Debug 19-Nov-2004 18:24                     73,618  Fsdmain.lib 19-Nov-2004 18:24                     86,016  Fsdmain.pdb 19-Nov-2004 18:24                    177,796  Fsmain.lib 19-Nov-2004 18:24                     69,632  Fsmain.pdb 19-Nov-2004 18:24                    331,506  Storemgr.lib 19-Nov-2004 18:24                     94,208  Storemgr.pdb

Path: Public\Common\Oak\Lib\Sh3\Retail 19-Nov-2004 18:24                     58,558  Fsdmain.lib 19-Nov-2004 18:24                     86,016  Fsdmain.pdb 19-Nov-2004 18:24                    138,100  Fsmain.lib 19-Nov-2004 18:24                     69,632  Fsmain.pdb 19-Nov-2004 18:24                    292,222  Storemgr.lib 19-Nov-2004 18:24                     86,016  Storemgr.pdb

Path: Public\Common\Oak\Lib\Sh4\Debug 19-Nov-2004 18:24                     73,618  Fsdmain.lib 19-Nov-2004 18:24                     86,016  Fsdmain.pdb 19-Nov-2004 18:24                    177,772  Fsmain.lib 19-Nov-2004 18:24                     69,632  Fsmain.pdb 19-Nov-2004 18:24                    331,506  Storemgr.lib 19-Nov-2004 18:24                     94,208  Storemgr.pdb

Path: Public\Common\Oak\Lib\Sh4\Retail 19-Nov-2004 18:24                     58,540  Fsdmain.lib 19-Nov-2004 18:24                     86,016  Fsdmain.pdb 19-Nov-2004 18:24                    138,078  Fsmain.lib 19-Nov-2004 18:24                     69,632  Fsmain.pdb 19-Nov-2004 18:24                    291,982  Storemgr.lib 19-Nov-2004 18:24                     86,016  Storemgr.pdb

Path: Public\Common\Oak\Lib\X86\Debug 19-Nov-2004 18:21                     72,218  Fsdmain.lib 19-Nov-2004 18:21                     86,016  Fsdmain.pdb 19-Nov-2004 18:21                    163,118  Fsmain.lib 19-Nov-2004 18:21                     69,632  Fsmain.pdb 19-Nov-2004 18:21                    288,596  Storemgr.lib 19-Nov-2004 18:21                     94,208  Storemgr.pdb

Path: Public\Common\Oak\Lib\X86\Retail 19-Nov-2004 18:21                     55,934  Fsdmain.lib 19-Nov-2004 18:21                     86,016  Fsdmain.pdb 19-Nov-2004 18:21                    116,420  Fsmain.lib 19-Nov-2004 18:21                     69,632  Fsmain.pdb 19-Nov-2004 18:21                    255,162  Storemgr.lib 19-Nov-2004 18:21                     86,016  Storemgr.pdb



STATUS
Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the &quot;Applies to&quot; section.



MORE INFORMATION
This update modifies the Common.reg file to document the new flag value of 0x20. To prevent a volume from being unmounted, this flag must be included in the MountFlags registry setting for the target Storage Manager profile. ;  MountFlags - Flags on how the partition is mounted (hex values)
 * 1 - Hidden file system
 * 2 - May contain system registry
 * 4 - Mount as root of file system, &quot;\&quot;
 * 8 - Hide ROM when mounting FS root; use with FLAG_ROOTFS
 * 10 - Mount filesystem as an external ROM filesystem
 * 20 - Treat all files and subdirectories as system files

[HKEY_LOCAL_MACHINE\System\StorageManager\Profiles\ ] &quot;MountFlags&quot;=dword:

If you have previously set a value for the MountFlags setting, the value 0x20 must be combined with the current value by using the OR operator.

Keywords: kbbug kbfix kbqfe KB887708

-

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

© Microsoft Corporation. All rights reserved.