Поделиться через


.pcmd (установка команды командной строки)

Команда PCMD заставляет отладчика выдавать команду всякий раз, когда целевой объект перестает выполнять и отображает запрос в окне команды отладчика с регистрацией или целевыми сведениями о состоянии.

.pcmd -s CommandString 
.pcmd -c 
.pcmd 

Параметры

-s **** CommandString
Задает новую строку командной строки командной строки. При остановке выполнения целевого объекта отладчик выдает проблемы и немедленно запускает команду CommandString . Если CommandString содержит пробелы или точки с запятой, необходимо заключить его в кавычки.

-c
Удаляет любую существующую строку командной строки командной строки.

Среда

Позиция Description
Режимы Режим пользователя, режим ядра
Целевые объекты Динамический, аварийный дампа
Платформы Все

Дополнительная информация

Дополнительные сведения о командной строке отладчика см. в разделе "Использование команд отладчика".

Замечания

При использовании команды PCMD без параметров отображается текущая команда командной строки.

При установке команды командной строки с помощью pcmd-s указанный CommandString выдается всякий раз, когда целевой объект перестает выполнять (например, когда заканчивается команда g, p или t). Команда CommandString не выдается при использовании команды без выполнения, если эта команда не отображает регистры или сведения о целевом состоянии.

В следующем примере первое использование PCMD задает фиксированную строку, которая отображается с запросом. Во-вторых, использование PCMD приводит к отображению отладчика текущего идентификатора процесса и идентификатора потока целевого объекта при каждом появлении запроса. Специальная строка не отображается после использования команды Ttime , так как эта команда не включает выполнение.

0:000> .pcmd
No per-prompt command

0:000> .pcmd -s ".echo Execution is done."
Per-prompt command is '.echo Execution is done.'

0:000> t
Prymes!isPrime+0xd0:
004016c0 837dc400      cmp dword ptr [ebp-0x3c],0x0 ss:0023:0012fe70=00000002
Execution is done.

0:000> t
Prymes!isPrime+0xd4:
004016c4 7507             jnz     Prymes!isPrime+0xdd (004016cd)
 [br=1]
Execution is done.

0:000> .ttime
Created: Thu Aug 21 13:18:59 2003
Kernel:  0 days 0:00:00.031
User:    0 days 0:00:00.000

0:000> .pcmd -s "r $tpid, $tid"
Per-prompt command is 'r $tpid, $tid'

0:000> t
Prymes!isPrime+0xdd:
004016cd ebc0             jmp     Prymes!isPrime+0x9f (0040168f)
$tpid=0000080c $tid=00000514

0:000> t
Prymes!isPrime+0x9f:
0040168f 8b55fc           mov     edx,[ebp-0x4]     ss:0023:0012fea8=00000005
$tpid=0000080c $tid=00000514