共用方式為


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