Microsoft has stated that they are no longer offering offline symbol packages as a downloadable MSI. For those who need to download symbols to debug their applications or Windows, you will now need to connect directly to their symbol server or use the symchk utility to download them.
According to Microsoft, the MSI symbol packages are no longer being offered because they are updating Windows too fast and the packages quickly become out of date.
"With the cadence that we release updates for Windows, the Windows debugging symbols we publish via the packages on this page are quickly made out of date. We have made significant improvements to the online Microsoft Symbol Server by moving this to be an Azure-based symbol store, and symbols for all Windows versions and updates are available there." - Microsoft
Thankfully, if you do not wish to connect directly to the symbol server, you can instead use the symchk.exe utility to download any necessary PDB files.
Symchk.exe, which is included in the Windows 10 SDK, is a program that examines an executable and confirms whether the correct symbols are available on the machine. To get symchk, you need to install the Windows 10 SDK and select to install the Debugging Tools for Windows package.
If your computer is directly connected to the Internet, you can use symchk to analyze an executable and then automatically connect to the Microsoft symbol server and download the appropriate symbol (PDB) files.
Before we get started, we want to create a folder called C:\symbols that will be used to store the downloaded PDB files. You can then run symchk using the following command to download an executable's associated symbol files.
symchk.exe [filename] /s SRV*[symbol_folder]*http://msdl.microsoft.com/download/symbols
As an example, if we want to download the symbol files associated with C:\Windows\system32\calc.exe and store them in C:\Symbols, we would issue the following command:
symchk.exe "c:\windows\system32\calc.exe" /s SRV*c:\symbols\*http://msdl.microsoft.com/download/symbols
Once you execute the command, symchk will connect to Microsoft's symbol server, search for the associated PDB files, and download them to the C:\symbol folder.
If you want to recursively download symbols for all the executables found in a particular path, you can add the "/r" command line argument. For example, to download all PDB files for executables under the C:\Windows folder, you would enter:
"C:\Program Files (x86)\Windows Kits\10\Debuggers\x86\symchk.exe" /r c:\windows /s SRV*c:\symbols\*http://msdl.microsoft.com/download/symbols
Once you enter this command, symchk.exe will scan all the files under C:\Windows and download the associated symbol files from Microsoft's symbol server to C:\symbols as shown below.
This process can take quite a while, so please be patient while the files are downloaded.
If you need to download symbols for a computer that is offline, you can instead follow these instructions, which utilize the /om and /im command line arguments.