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 "Symptoms" 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.
RESOLUTION
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 "Applies to" 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, "\" ; 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\<named profile>] "MountFlags"=dword:<flags>
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