.dvfree (Free Memory)

The .dvfree command frees a memory allocation owned by the target process.

.dvfree [/d] BaseAddress Size 


Decommits the allocation, but does not actually release the pages containing the allocation. If this option is used, the debugger calls VirtualFreeEx with the dwFreeType parameter equal to MEM_DECOMMIT. If this option is not used, the value MEM_RELEASE is used. See the Microsoft Windows SDK for details.

Specifies the virtual address of the beginning of the allocation.

Specifies the amount of memory to be freed, in bytes. The actual memory freed will always be a whole number of memory pages.



user mode only


live debugging only




The .dvfree command calls VirtualFreeEx to free an existing memory allocation. Unless the /d option is specified, the pages containing this memory are released.

This command can be used to free an allocation made by .dvalloc (Allocate Memory). It can also be used to free any block of memory owned by the target process, but freeing memory that was not acquired through .dvalloc will naturally pose risks to the stability of the target process.

Send comments about this topic to Microsoft