What does Windows error code 702 (ERROR_SEGMENT_NOTIFICATION) mean?

 
Previous Next
ERROR_RXACT_STATE_CREATED ERROR_BAD_CURRENT_DIRECTORY

ERROR_SEGMENT_NOTIFICATION

What ERROR_SEGMENT_NOTIFICATION means

A virtual DOS machine reported loading, unloading, or moving a 16-bit program segment. In practical terms, this status belongs to legacy VDM debugging: the subsystem notifies a debugger so symbols and breakpoints can follow a DOS or Win16 segment.

Typical causes

  • A 16-bit module loaded or unloaded
  • A movable segment changed its address
  • A debugger attached to a legacy compatibility environment

How to investigate

  1. Capture the segment selector, module identity, and load or unload action
  2. Check whether the environment actually supports NTVDM
  3. Treat the notification as debugger metadata rather than a modern application error

Developer guidance

This status is relevant mainly to legacy 16-bit debugging. On modern 64-bit Windows, absence of NTVDM may be the more important compatibility limitation.

Operational interpretation

When ERROR_SEGMENT_NOTIFICATION appears, first determine whether the operation actually failed, completed with an informational condition, or transferred work to another component. Record the API name, returned value, affected process or object, and the immediately preceding event. For this code, the most useful boundary is the legacy VDM debugging boundary; broad machine-wide remediation before that boundary is identified can hide the original evidence.

Example scenario

An incident begins when a 16-bit module loaded or unloaded. A responder investigating this result should not begin with a generic reboot that destroys the original context. A better first step is to capture the segment selector, module identity, and load or unload action. That evidence connects it to its producing operation and reveals whether this particular result is repeatable, expected, or merely secondary.

Logging and telemetry

Telemetry for this Win32 error should preserve its numeric value, component version, process and thread identifiers, operation name, affected object or endpoint, elapsed time, and the first earlier failure in the same activity. Keep the result correlation identifier stable across callbacks so the status can be joined to the request that initiated this exact operation.

Recovery and validation

Apply recovery only after the responsible state has demonstrably changed. After changing that state, repeat one controlled this result scenario and verify both the returned status and the resulting system state. Absence of another log line is not sufficient: confirm that the intended legacy VDM debugging action completed, that no resource remains pending, and that later cleanup does not produce a different secondary error.

References


Looking for a different code? Search another status or error code.