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


Параметры командной строки PDBCopy

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

pdbcopy OldPDB NewPDB [Options] 

pdbcopy OldPDB NewPDB -p [-f:Symbol] [-f:@TextFile] [Options] 

pdbcopy OldPDB NewPDB -p [-F:Symbol] [-F:@TextFile] [Options] 

pdbcopy InputPDB BackupPDB -CVE-2018-1037 [autofix|verbose]

pdbcopy /? 

Параметры

OldPDB
Указывает путь и имя файла исходного файла символов, которые необходимо прочитать, включая расширение PDB-файла. OldPDB может содержать абсолютный или относительный путь каталога на локальном компьютере или UNC-путь. Если путь не указан, используется текущий рабочий каталог. Если OldPDB содержит пробелы, он должен быть заключен в кавычки.

NewPDB
Указывает путь и имя файла создаваемого файла символов, включая расширение PDB-файла. NewPDB может содержать абсолютный или относительный путь каталога на локальном компьютере или UNC-путь. Этот путь уже должен существовать; PDBCopy не создаст новый каталог. Если путь не указан, используется текущий рабочий каталог. Если NewPDB содержит пробелы, его необходимо заключить в кавычки. Указанный файл еще не должен существовать; Если это так, новый файл может быть написан некорректно или неправильно записан.

-p
Позволяет PDBCopy удалить данные закрытых символов из нового файла символов. Если старый файл символов не содержит закрытых символов, этот параметр не действует. Если этот параметр не указан, PDBCopy создает новый файл с идентичным содержимым символов, как исходный файл.

-f:Symbol
Позволяет PDBCopy удалить указанный открытый символ из нового файла символов. Символ должен указать имя удаляемого символа, включая все украшения имен символов (например, начальные знаки подчеркивания), но не включая имя модуля. Для этого параметра требуется параметр -p. При использовании нескольких параметров -f или -f:@ PDBCopy удаляет все указанные символы из нового файла символов.

-f:@TextFile
Позволяет PDBCopy удалить открытые символы, перечисленные в указанном текстовом файле из нового файла символов. TextFile указывает имя файла и путь (абсолютный или относительный) этого файла. Этот файл может перечислять имена любого количества символов, по одному в каждой строке, включая любые украшения имен символов (например, начальные знаки подчеркивания), но не включая имена модулей. Для этого параметра требуется параметр -p.

-F:Symbol
Позволяет PDBCopy удалить все открытые и закрытые символы из нового файла символов, за исключением указанного открытого символа. Символ должен указать имя сохраненного символа, включая все украшения имен символов (например, начальные символы подчеркивания), но не включая имя модуля. Для этого параметра требуется параметр -p. Если используются несколько параметров -F или -F:@, все указанные символы сохраняются в новом файле символов.

-F:@TextFile
Позволяет PDBCopy удалить все открытые и закрытые символы из нового файла символов, за исключением открытых символов, перечисленных в указанном текстовом файле. TextFile указывает имя файла и путь (абсолютный или относительный) этого файла. Этот файл может перечислять имена любого количества символов, по одному в каждой строке, включая любые украшения имен символов (например, начальные знаки подчеркивания), но не включая имена модулей. Для этого параметра требуется параметр -p.

Параметры любого сочетания следующих параметров. Эти параметры чувствительны к регистру.

-s
Приводит к тому, что новый файл символов имеет другую подпись, чем старый файл. Обычно не следует использовать параметр -s, так как новая сигнатура может привести к тому, что SymSrv назначает другое значение индекса новому файлу, чем старому файлу, предотвращая правильную замену старого файла.

-vc6
Заставляет PDBCopy использовать mspdb60.dll вместо mspdb80.dll. Этот параметр никогда не требуется, так как PDBCopy автоматически ищет соответствующую версию mspdb*.dll. По умолчанию PDBCopy использует mspdb80.dll, которая является версией, используемой Visual Studio .NET 2002 и более поздними версиями Visual Studio. Если символы были созданы с помощью Visual Studio 6.0 или более ранней версии, можно указать этот параметр командной строки, чтобы PDBCopy использовал mspdb60.dll вместо этого. Однако это не обязательно, так как PDBCopy ищет соответствующий файл, даже если этот параметр не используется. Какая версия mspdb*.dll должна находиться в исполняемом пути окна командной строки, из которого запускается PDBCopy.

-CVE-2018-1037

Сообщает, имеет ли InputPDBFile проблему, описанную в CVE-2018-1037, и при необходимости исправляет проблему. Дополнительные сведения и подробные сведения об использовании см. в средстве kb# 4131751 — PDBCopy.

-?
Отображает текст справки для командной строки PDBCopy.

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

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