Windows error 0x000000D2, 210

Detailed Error Information

THREAD_1_INACTIVE[1]

MessageThe signal handler cannot be set.
Declared inwinerror.h

This appears to be a raw Win32 error. More information may be available in error 0x800700D2.

BUGCODE_ID_DRIVER[2]

This is a Blue Screen of Death stop code. More information is available in the Knowledge Base article Bug Check 0xD2: BUGCODE_ID_DRIVER.

HRESULT analysis[3]

This is probably not the correct interpretation of this error. The Win32 error above is more likely to indicate the actual problem.
FlagsSeveritySuccess

This code indicates success, rather than an error. This may not be the correct interpretation of this code, or possibly the program is handling errors incorrectly.

Reserved (R)false
OriginMicrosoft
NTSTATUSfalse
Reserved (X)false
FacilityCode0 (0x000)
NameFACILITY_NULL[3][1]
DescriptionThe default facility code.[3][1]
Error Code210 (0x00d2)

Possible solutions

1

trying to understand this instruction in context w. Segment registers

assembly
x86
gdb

The ds: is a so called segment override prefix.

For example, let's say you write down this in your source code (NASM syntax):

mov eax, [0x804c220]

You did not use a segment prefix, but the assembler will use the default segment for this kind of memory access, the ds (data segment). It will transform your code to this on its own:

 mov eax, [ds:0x804c220]

That is why using the ds: prefix in the source code would make no difference in your example. But when you use a different segment overwrite prefix, it will make a difference. For example in this case the assembler will use the fs instead of default ds segment:

 mov eax, [fs:0x804c220] 

answered on Stack Overflow Feb 24, 2015 by Blechdose • edited Feb 24, 2015 by Blechdose
0

trying to understand this instruction in context w. Segment registers

assembly
x86
gdb

ds:0x804c220 is an address; the instruction is moving the value at that address into eax.

answered on Stack Overflow Feb 24, 2015 by Scott Hunter
0

getting drive name from usb device

c#
wpf
usb

Casting to DEV_BROADCAST_VOLUME only makes sense when dbch_Devicetype is DBT_DEVTYP_VOLUME (2).

You need

if (volume.dbch_Devicetype == 2) Usb_DeviceAdded(ToDriveName(volume.dbcv_unitmask));

Strictly speaking, you should first use DEV_BROADCAST_HDR, test the devicetype, and only when it is 2, use DEV_BROADCAST_VOLUME.

answered on Stack Overflow Jul 26, 2017 by Ben Voigt

Comments

Leave a comment

(plain text only)

Sources

  1. winerror.h from Windows SDK 10.0.14393.0
  2. https://docs.microsoft.com/en-us/windows-hardware/drivers/debugger/bug-check-code-reference2
  3. https://msdn.microsoft.com/en-us/library/cc231198.aspx

User contributions licensed under CC BY-SA 3.0