рд╡рд┐рдВрдбреЛрдЬрд╝ рдореЗрдореЛрд░реА рдбрдВрдк рдпрд╛ рдХрд┐рд╕реА рдЕрдиреНрдп рдЯреНрд╡рд┐рди рд╕рдВрджрд░реНрдн рдореЗрдиреВ рдХреЗ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд╛ рд╕рд░рд▓реАрдХрд░рдг

рд╡рд┐рдВрдбреЛрдЬрд╝ рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рдХреЗ рдХрдИ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛, рдЬрд▓реНрджреА рдпрд╛ рдмрд╛рдж рдореЗрдВ, рдпрд╣ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдХрд┐ рдЙрдирдХрд╛ рдкрд╕рдВрджреАрджрд╛ рдУрдПрд╕ "рдмреАрдПрд╕рдУрдбреА рдореЗрдВ рдХреНрдпреЛрдВ рдЧрд┐рд░рддрд╛ рд╣реИред"

рдПрдХ рдХрд╛рд░рдг рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╣реБрдд рдХреБрдЫ рд▓рд┐рдЦрд╛ рдЬрд╛ рдЪреБрдХрд╛ рд╣реИ рдХрд┐ рдЗрдВрдЯрд░рдиреЗрдЯ рдкрд░ рдХрд┐рд╕реА рдХрд╛рд░рдг рдХреЛ рдХреИрд╕реЗ рджреЗрдЦрд╛ рдЬрд╛рдП рдФрд░ рдЙрд╕реЗ рдХреИрд╕реЗ рдареАрдХ рдХрд┐рдпрд╛ рдЬрд╛рдП (рд╕реНрдерд┐рддрд┐ рдХреЗ рдЖрдзрд╛рд░ рдкрд░), рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдХреНрдпрд╛ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рдЕрдЧрд░ рдореБрдЭреЗ рдЗрд╕ рдХрд╛рд░рдг рдХрд╛ рдЬрд▓реНрдж рд╕реЗ рдЬрд▓реНрдж рдкрддрд╛ рд▓рдЧрд╛рдирд╛ рд╣реИ рдФрд░ рдЗрд╕реЗ рдирд┐рдпрдорд┐рдд рд░реВрдк рд╕реЗ рдХрд░рдирд╛ рд╣реИ, рдЬреИрд╕реЗ рдХрд┐ рд╕рд░реНрд╡рд┐рд╕ рдлрд╝реЛрд░рдо рдпрд╛ рдХрдВрдкреНрдпреВрдЯрд░ рдлрд╝реЛрд░рдо рдореЗрдВ рдирд┐рдпрдорд┐рдд рд░реВрдк рд╕реЗ?



рд╕рдВрджрд░реНрдн рдореЗрдиреВ рдХреЗ рдХреБрдЦреНрдпрд╛рдд рдореЛрдбрд╝ рдХрд╛рд░реНрдп рдХреЛ рд╕рд░рд▓ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдХреНрдпреЛрдВрдХрд┐ рд╡реЗ рдХрд╛рдлреА рд╕рд░рд▓ рд░реВрдк рд╕реЗ рдмрдирд╛рдП рдЧрдП рд╣реИрдВред

рдЯреНрд░реЗрдирд┐рдВрдЧ
рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ рдЖрдкрдХреЛ windbg.exe рдбреАрдмрдЧрд░, kd.exe рдФрд░ рдЕрдиреНрдп рдЖрд╡рд╢реНрдпрдХ рд╕рд╛рдордЧреНрд░реА рдХреЗ рдХрдВрд╕реЛрд▓ рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рд╕рд╛рде рдкреИрдХреЗрдЬ рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

рдпреЗ рдкреИрдХреЗрдЬ X64 рдбреАрдмрдЧрд░реНрд╕ рдФрд░ рдЯреВрд▓реНрд╕-x64_en-us.msi рдпрд╛ X86 рдбреАрдмрдЧрд░реНрд╕ рдФрд░ рдЯреВрд▓реНрд╕-x86_en-us.msi рд╣реИрдВ, рдЬреЛ рдУрдПрд╕ рдХреА рдереЛрдбрд╝реА рдЧрд╣рд░рд╛рдИ рдФрд░ / рдпрд╛ рд╡реНрдпрдХреНрддрд┐рдЧрдд рдкреНрд░рд╛рдердорд┐рдХрддрд╛рдУрдВ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдЪреБрдирдиреЗ рдХреЗ рд▓рд┐рдП рд╣реИрдВред

рдЖрдкрдХреЛ Microsoft рд╡реЗрдмрд╕рд╛рдЗрдЯ рдкрд░ рдЕрд▓рдЧ-рдЕрд▓рдЧ рд▓рд┐рдВрдХ рдирд╣реАрдВ рдорд┐рд▓реЗрдВрдЧреЗ, рд▓реЗрдХрд┐рди рдпреЗ рдкреИрдХреЗрдЬ Windows рдбреНрд░рд╛рдЗрд╡рд░ рдХрд┐рдЯ рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рд╣реИрдВ, рдЖрдк рдЗрд╕реЗ рдЙрдЪрд┐рдд рдЗрдВрд╕реНрдЯреЙрд▓рд░ рдореЛрдб рдХрд╛ рдЪрдпрди рдХрд┐рдП рдмрд┐рдирд╛ рдЗрд╕реЗ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдкреИрдХреЗрдЬ рдбрд╛рдЙрдирд▓реЛрдб рд╣реЛрдиреЗ рдкрд░ \ Windows Kits \ 10 \ WDK \ Installers рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рд╣реЛрдВрдЧреЗред

рдЕрдЧрд░ рдХрд┐рд╕реА рдХреЛ рдЗрд╕рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рддреЛ рдореИрдВрдиреЗ рдЙрдиреНрд╣реЗрдВ рдЕрд▓рдЧ рд╕реЗ I рдбрд┐рд╕реНрдХ рдкрд░ рдЕрдкрд▓реЛрдб рдХрд┐рдпрд╛:

X64 рдбреАрдмрдЧрд░реНрд╕ рдФрд░ рдЯреВрд▓реНрд╕-x64_en-us.msi
X86 рдбрд┐рдмрдЧрд░реНрд╕ рдФрд░ рдЯреВрд▓реНрд╕-x86_en-us.msi

рдореИрдВрдиреЗ рдбрд┐рдмрдЧрд░ рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдирд╣реАрдВ рдХрд░рдиреЗ рдХрд╛ рдирд┐рд░реНрдгрдп рд▓рд┐рдпрд╛, рд▓реЗрдХрд┐рди рд╕рд┐рд░реНрдл msi рдХреЛ рдЕрдирдкреИрдХ рдХрд░реЗрдВ:

msiexec /a "D:\Desktop\X64 Debuggers And Tools-x64_en-us.msi" /qb targetdir="D:\Desktop\Temp" 

рдпрд╣ "рдкреЛрд░реНрдЯреЗрдмрд▓" рд╡рд┐рдХрд▓реНрдк рдкрд░реНрдпрд╛рдкреНрдд рд╕реЗ рдЕрдзрд┐рдХ рд╣реИред рдЕрдкрдиреА рд╕реНрд╡рдпрдВ рдХреА рд╕реБрд╡рд┐рдзрд╛ рдХреЗ рд▓рд┐рдП, рдореИрдВрдиреЗ рдХрдИ рд╕рдмрдлрд╝реЛрд▓реНрдбрд░реНрд╕ рд╕реЗ рд╡рд╛рдВрдЫрд┐рдд рд╕рд╛рдордЧреНрд░реА рдХреЛ C: \ рдкреЛрд░реНрдЯреЗрдмрд▓ \ рдбреАрдмрдЧ рдореЗрдВ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░ рджрд┐рдпрд╛, рддрд╛рдХрд┐ рдпрд╣ рд╕рдм рдмрджрд▓ рдЬрд╛рдП:

C:\Portable\Debug\windbg.exe
C:\Portable\Debug\kd.exe


+ рдмрд╛рдХреА рд╕рдм рдХреБрдЫред рд╣рдо рднрд╡рд┐рд╖реНрдп рдореЗрдВ рдЗрд╕ рдкрде рдкрд░ рдирд┐рд░реНрдорд╛рдг рдХрд░реЗрдВрдЧреЗ (рдкреНрд▓рд╕ рдореИрдВрдиреЗ рдЗрд╕реЗ% PATH% рдореЗрдВ рдлрд┐рд░ рд╕реЗ рдЬреЛрдбрд╝рд╛, рд╕реБрд╡рд┐рдзрд╛ рдХреЗ рд▓рд┐рдП)ред

рдЗрд╕ рдкрд░, рддреИрдпрд╛рд░реА рдХреЗ рдЙрдкрд╛рдпреЛрдВ рдХреЛ рдкреВрд░рд╛ рдХрд░рдиреЗ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдПрдХ рдЯреНрд╡реАрдХ рдмрдирд╛рдиреЗ рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХрд╛ рд╡рд░реНрдгрди рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

рдЪреВрдВрдХрд┐ рдореЗрд░рд╛ рдХрд╛рд░реНрдп рдорд╛рдирддрд╛ рд╣реИ рдХрд┐ рдХрдИ рдФрд░ рдЕрдХреНрд╕рд░ рдбрдВрдк рд╣реЛрддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдореБрдЭреЗ рдЗрд╕ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рдЬрд┐рддрдирд╛ рд╕рдВрднрд╡ рд╣реЛ рдЙрддрдирд╛ рддреЗрдЬ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдЬрдмрдХрд┐ рдпрд╣ рдПрдХ рддреНрд╡рд░рд┐рдд рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рдЬрд╛рдирдХрд╛рд░реАрдкреВрд░реНрдг рдмрдирд╛рддрд╛ рд╣реИред

рдЪрд╛рдмрд┐рдпрд╛рдБ рдФрд░ рдбрд┐рдмрдЧрд░ рдХрдорд╛рдВрдб рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдирд╛


рднрд╡рд┐рд╖реНрдп рдХреЗ рдЯреНрд╡реАрдХ рдХреЗ рд▓рд┐рдП рдПрдХ рдЖрдзрд╛рд░ рдХреЗ рд░реВрдк рдореЗрдВ, рдЖрдЗрдП рдРрд╕реА рдмреИрдЪ рдлрд╝рд╛рдЗрд▓ рд▓реЗрдВ, рдЬрд┐рд╕ рдкрд░ рд╡рд╛рдВрдЫрд┐рдд рдбрдВрдк рдХреЛ рдЦреАрдВрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд╣реИред

рдЬрд╛рдирдХрд╛рд░реА рдХреА рдмреЗрд╣рддрд░ рдзрд╛рд░рдгрд╛ рдХреЗ рд▓рд┐рдП, рдореЗрд░реА рд╕рдордЭ рдореЗрдВ, рдореИрдВрдиреЗ рдХрдВрд╕реЛрд▓ рдХреЗ рд░рдВрдЧреЛрдВ рдХреЛ рдЙрд▓реНрдЯрд╛ рдХрд░ рджрд┐рдпрд╛ рдФрд░ рдХрдВрд╕реЛрд▓ рд╡рд┐рдВрдбреЛ рдХрд╛ рдЖрдХрд╛рд░ рдмрдбрд╝рд╛ рдХрд░ рджрд┐рдпрд╛ред

 @echo off title text %1 mode con: cols=170 color F0 title "%1" kd.exe -nosqm -sup -z "%1" ^ -y srv*"C:\Symbols"*http://msdl.microsoft.com/download/symbols -i srv*"C:\Symbols"*http://msdl.microsoft.com/download/symbols -c ^ "!analyze -v; !cpuid; !sysinfo cpuinfo; !sysinfo cpuspeed; !sysinfo machineid; q"" pause exit /b 

рдпрд╣рд╛рдБ рдЖрдк kd.exe рджреНрд╡рд╛рд░рд╛ рдкреНрд░рд╕рд╛рд░рд┐рдд рдкреИрд░рд╛рдореАрдЯрд░ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рдЬреИрд╕реЗ -y , -i рдФрд░, рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, -z , рдЬреЛ рдХрд┐ kdfe.cmd рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирддрд╛ рд╣реИ, рдЬреЛ рд╡реНрдпрд╛рдкрдХ рд░реВрдк рд╕реЗ рд╕рдВрдХреАрд░реНрдг рд╕рд░реНрдХрд▓ рдореЗрдВ рдЬрд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИред

 -i !ImagePath! specifies the location of the executables that generated the fault (see _NT_EXECUTABLE_IMAGE_PATH) -y !SymbolsPath! specifies the symbol search path (see _NT_SYMBOL_PATH) -z !CrashDmpFile! specifies the name of a crash dump file to debug 

рдпрджрд┐ рд╣рдо рдЗрд╕реЗ рд╕рд╛рдорд╛рдиреНрдп рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХреЗ рд╕рд╛рде рд╕рд╛рджреГрд╢реНрдп рджреНрд╡рд╛рд░рд╛ рд▓реЗрддреЗ рд╣реИрдВ, рддреЛ рдорд╛рдореВрд▓реА рдЕрдВрддрд░ рд╣реИрдВ: -nosqm рдФрд░ -sup рдЗрд╕рдХреЗ рдЕрддрд┐рд░рд┐рдХреНрдд рддрд░реНрдХ рдХреЗ рд░реВрдк рдореЗрдВ рдкрд╛рд░рд┐рдд рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВ ред

 -nosqm disables SQM data collection/upload. -sup enables full public symbol searches 

рдЯреАрдореЛрдВ рдХреЗ рд░реВрдк рдореЗрдВ:

 !cpuid !sysinfo cpuinfo !sysinfo cpuspeed !sysinfo machineid 

рдореИрдВ рдЙрдиреНрд╣реЗрдВ рдкреЗрдВрдЯ рдирд╣реАрдВ рдХрд░реВрдВрдЧрд╛, рдХреНрдпреЛрдВрдХрд┐ рдмрд╣реБрдд рд╕рд╛рд░реЗ рдХреЙрдкреА-рдкреЗрд╕реНрдЯ рдирд┐рдХрд▓реЗрдВрдЧреЗред рдЬреЛ рд▓реЛрдЧ рд░реБрдЪрд┐ рд░рдЦрддреЗ рд╣реИрдВ рд╡реЗ рджреЛрдиреЛрдВ рдореЗрдВ рд╕реЗ рдХрд┐рд╕реА рдПрдХ рдореЗрдВ debugger.chm рдХреА рд╡рд┐рд╕реНрддреГрдд рдорджрдж рдкрд╛ рд╕рдХрддреЗ рд╣реИрдВред * .msi рдКрдкрд░ рдпрд╛ docs.microsoft.com -cpuid -sysinfo рдкрд░ рдЙрд▓реНрд▓рд┐рдЦрд┐рдд рд╣реИ ред рд╕рдВрдХреНрд╖реЗрдк рдореЗрдВ, рдкреАрдбрд╝рд┐рдд рдХреА рдЧреНрд░рдВрдерд┐ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмреБрдирд┐рдпрд╛рджреА рдЬрд╛рдирдХрд╛рд░реАред

Kd.exe рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд╛ рдЖрдЙрдЯрдкреБрдЯ рд▓рдЧрднрдЧ рд╡рд╣реА рд╣реЛрдЧрд╛ рдЬреЛ рд╡рд┐рдВрдбрдмрдЧ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╕реАрдзреЗ рдХрд╛рдо рдХрд░рддреЗ рд╕рдордп рдкреНрд░рд╛рдкреНрдд рд╣реЛрдЧрд╛, рд▓реЗрдХрд┐рди рдкрд░рд┐рдгрд╛рдо рдмрд╣реБрдд рддреЗрдЬрд╝реА рд╕реЗ рдкреНрд░рд╛рдкреНрдд рд╣реЛрддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдЖрдкрдХреЛ рдХреБрдЫ рднреА рдЦреЛрд▓рдиреЗ, рдлрд╝реЛрд▓реНрдбрд░реНрд╕ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ, рдореЗрдиреВ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдбрдВрдк рдЦреЛрд▓рдиреЗ рдФрд░ рдбреАрдмрдЧрд░ рдореЗрдВ рдХрдорд╛рдВрдб рджрд░реНрдЬ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред

рдХрдВрд╕реЛрд▓ рд╕реЗ рдХрдЪрд░рд╛ рдЖрдЙрдЯрдкреБрдЯ рдХреЛ рдлрд╝рд┐рд▓реНрдЯрд░ рдХрд░рдирд╛


рдкрд╣рд▓реЗ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЖрдЗрдП рдПрдХ рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреА рдореЗрдореЛрд░реА рдбрдВрдк рд▓реЗрдВред рдЖрдЙрдЯрдкреБрдЯ рдореЗрдВ рдХрдЪрд░реЗ рдХреЗ рд╕рд╛рде рдПрдХ рдЫреЛрдЯреА рд╕рдорд╕реНрдпрд╛ рд╣реИ:

рдХрдВрд╕реЛрд▓ рдЖрдЙрдЯрдкреБрдЯ рдХреЗ рдПрдХ рдЯреБрдХрдбрд╝реЗ рдХрд╛ рд╕реНрдХреНрд░реАрдирд╢реЙрдЯ

рдпрд╣ рдкрд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, odin рдЙрддреНрдкреНрд░реЗрд░рдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рдбрдВрдк рдореЗрдВ, рдЬреЛ рд╣рдо рдЗрд╕ рдЙрджрд╛рд╣рд░рдг рдореЗрдВ рджреЗрдЦрддреЗ рд╣реИрдВред

рдкрд╛рд╕реНрдЯреЗрдмрд┐рди рдХреЗ рд▓рд┐рдВрдХ рдХреЗ рдХрд╛рд░рдг рдкреВрд░реНрдг рдЖрдЙрдЯрдкреБрдЯ рдмрд╣реБрдд рдмрдбрд╝реЗ рдкреИрдорд╛рдиреЗ рдкрд░ рд╣реИред

рдХреЗрд╡рд▓ рдЙрдкрдпреЛрдЧреА рдЬрд╛рдирдХрд╛рд░реА рдХреЛ рдЫреЛрдбрд╝рдХрд░ рдЕрдирд╛рд╡рд╢реНрдпрдХ рд▓рд╛рдЗрдиреЛрдВ рдХреЛ "рдлрд╝рд┐рд▓реНрдЯрд░" рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИред
рдореИрдВрдиреЗ рдЦреЛрдЬрд╛ , рдпрд╣ рдПрдХ рдРрд╕рд╛ рдмрджрд╕реВрд░рдд рд▓реЗрдХрд┐рди рдХрд╛рдо рдХрд░рдиреЗ рд╡рд╛рд▓рд╛ рд╣рд▓ рдирд┐рдХрд▓рд╛ред

 findstr /r /v /c:"^\*\*\* .* \*\*\*" /c:"^\*\*\*\*\*\*\*\*\*\*\*\*\*\*.*" 

рдпрд╣рд╛рдБ рдЦреЛрдЬ рдХрд╛ рдЙрдкрдпреЛрдЧ рджреЛ рдирд┐рдпрдорд┐рддрддрд╛рдПрдВ рдХрд░рддрд╛ рд╣реИ: рдПрдХ рддреАрди рддрд╛рд░рд╛рдВрдХрди рдХреЗ рд╕рд╛рде рд╢реБрд░реВ рд╣реЛрдиреЗ рд╡рд╛рд▓реА рд░реЗрдЦрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдЦреЛрдЬ рдХрд░рддрд╛ рд╣реИ, рдПрдХ рдЕрдВрддрд░рд┐рдХреНрд╖ рдФрд░ рдПрдХ рдЕрдВрддрд░рд┐рдХреНрд╖ рдФрд░ рддреАрди рддрд╛рд░рд╛рдВрдХрди рдХреЗ рд╕рд╛рде рд╕рдорд╛рдкреНрдд рд╣реЛрддрд╛ рд╣реИред 14 рддрд╛рд░реЛрдВ рд╕реЗ рд╢реБрд░реВ рд╣реЛрдиреЗ рд╡рд╛рд▓реА рд▓рд╛рдЗрдиреЛрдВ рдХреЗ рд▓рд┐рдП рджреВрд╕рд░реА рдЦреЛрдЬред рдореИрдВ рдФрд░ рдЕрдзрд┐рдХ рд╕рдордЭрджрд╛рд░реА рд╕реЗ рдХреБрдЫ рдирд╣реАрдВ рдХрд░ рд╕рдХрд╛ред

(рдореИрдВ kd.exe рдирд┐рдХрд╛рд╕ рдкрд░ рдкрд╛рдпреА рдЧрдИ рджрд┐рдирдЪрд░реНрдпрд╛ рдореЗрдВ рд▓рд╛рдЗрди рд╕рдорд╛рдкреНрддрд┐ рд╡рд░реНрдгреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЕрдиреБрд╢рдВрд╕рд╛ рдирд╣реАрдВ рдХрд░рддрд╛, kdред

"рдлрд┐рд▓реНрдЯрд░" рдХреЗ рд╕рд╛рде рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдмреИрдЪ рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдкреВрд░рд╛ рдХреЛрдб рдирд┐рдХрд▓рд╛:

 @echo off title text %1 mode con: cols=170 color F0 title "%1" kd.exe -nosqm -sup -z "%1" ^ -y srv*"C:\Symbols"*http://msdl.microsoft.com/download/symbols -i srv*"C:\Symbols"*http://msdl.microsoft.com/download/symbols ^ -c "!analyze -v; !cpuid; !sysinfo cpuinfo; !sysinfo cpuspeed; !sysinfo machineid; q" | findstr /r /v /c:"^\*\*\* .* \*\*\*" /c:"^\*\*\*\*\*\*\*\*\*\*\*\*\*\*.*" pause exit /b 

рдлрд╝рд┐рд▓реНрдЯрд░реНрдб рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рдкреВрд░реНрдг рдЖрдЙрдЯрдкреБрдЯ рднреА рдкрд╛рд╕реНрдЯрдмрд┐рди рдкрд░ рд╣реИ ред

рдкрд░рд┐рдгрд╛рдо рд╕рдорд╛рди рд╣реИ, рд▓реЗрдХрд┐рди "рдХрдЪрд░рд╛" рдХреЗ рдмрд┐рдирд╛ред рдкрд╛рда рдХреА 290 рд▓рд╛рдЗрдиреЗрдВ рдмрдирд╛рдо 894 рдХреАред рдкрд╣рд▓реЗ рд╕реЗ рдмреЗрд╣рддрд░, рд▓реЗрдХрд┐рди рд╕рднреА рдирд╣реАрдВред

рддреНрд╡рд░рд┐рдд рдбрд┐рдмрдЧрд░ рд▓реЙрдЧ рдирд┐рд░реНрдорд╛рдг


рдЕрдЧрд▓рд╛ рдХрджрдо рдПрдХ рд▓реЙрдЧ рдЬреЛрдбрд╝рдирд╛ рд╣реИ, рдЬрд┐рд╕реЗ рдХрд╣реАрдВ рднреА рдкреЛрд╕реНрдЯ рдпрд╛ рднреЗрдЬрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, kd.exe рдХреЛ рддрд░реНрдХ -loga <"P: \ _ to the \ log.log"> рдкрд╛рд╕ рдХрд░реЗрдВ
рдХреЛрдб рдирд┐рдореНрди рд░реВрдк рд▓реЗрддрд╛ рд╣реИ:

 @echo off title text %1 mode con: cols=170 color F0 title "%1" set "D=%1" set L=%D:.dmp=.LOG% kd.exe -nosqm -sup -loga "%L%" -z "%D%" ^ -y srv*"C:\Symbols"*http://msdl.microsoft.com/download/symbols -i srv*"C:\Symbols"*http://msdl.microsoft.com/download/symbols ^ -c "!analyze -v; !cpuid; !sysinfo cpuinfo; !sysinfo cpuspeed; !sysinfo machineid; q" | findstr /r /v /c:"^\*\*\* .* \*\*\*" /c:"^\*\*\*\*\*\*\*\*\*\*\*\*\*\*.*" pause exit /b 

рдПрдХ рд▓реЙрдЧ 102516-21949-01.LOG рдбрдВрдк рдХреЗ рд░реВрдк рдореЗрдВ рдПрдХ рд╣реА рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рдлрд╝рд╛рдЗрд▓ 102516-21949-01.dmp рдХреЗ рд▓рд┐рдП рдЙрддреНрдкрдиреНрди рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред

рдЗрд╕ рд╕реНрдерд┐рддрд┐ рдореЗрдВ, рд▓реЙрдЧ рдХреЛ "рдХрдЪрд░рд╛" рдХрд╛ рдЖрдЙрдЯрдкреБрдЯ рдлрд╝рд┐рд▓реНрдЯрд░ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдХреЗрд╡рд▓ рдХрдВрд╕реЛрд▓ рдХреЛ рдЖрдЙрдЯрдкреБрдЯ рдлрд╝рд┐рд▓реНрдЯрд░ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдореЗрд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ рдпрд╣ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдирд╣реАрдВ рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдЖрдк рдирд┐рд░реНрдорд╛рдг рдХреЗ рдмрд╛рдж рд▓реЙрдЧ рдХреЛ рд╕рд╛рдлрд╝ рдХрд░рдХреЗ рдЗрд╕реЗ рдареАрдХ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:

 @echo off title text %1 mode con: cols=170 color F0 title "%1" set "D=%1" set L=%D:.dmp=.LOG% kd.exe -nosqm -sup -loga "%L%" -z "%D%" ^ -y srv*"C:\Symbols"*http://msdl.microsoft.com/download/symbols -i srv*"C:\Symbols"*http://msdl.microsoft.com/download/symbols ^ -c "!analyze -v; !cpuid; !sysinfo cpuinfo; !sysinfo cpuspeed; !sysinfo machineid; q" | findstr /r /v /c:"^\*\*\* .* \*\*\*" /c:"^\*\*\*\*\*\*\*\*\*\*\*\*\*\*.*" set CL=%L:.LOG=_CLEAN.LOG% type "%L%" | findstr /r /v /c:"^\*\*\* .* \*\*\*" /c:"^\*\*\*\*\*\*\*\*\*\*\*\*\*\*.*" >> "%CL%" del /f /q "%L%" pause exit /b 

рд╡рд┐рдВрдбрдмрдЧ рдореЗрдВ рдПрдХ рдбрдВрдк рдЦреЛрд▓рдирд╛


рдЕрдм рдХреНрд░рдо рдореЗрдВ рдЕрдВрддрд┐рдо рдЪрд░рдг, рд▓реЗрдХрд┐рди рдорд╣рддреНрд╡ рдореЗрдВ рдирд╣реАрдВ: рдЖрдкрдХреЛ рдбрдВрдк рдХреЛ рд╕реАрдзреЗ Windbg.exe рдкрд░ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдФрд░ рддреБрд░рдВрдд рдЗрд╕реЗ рдХрдорд╛рдВрдб рджреЗрдВ рдЬрд┐рд╕рд╕реЗ рдЖрдкрдХреЛ рдкреНрд░рд╡реЗрд╢ рдХрд░рдиреЗ рдХреА рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреАред рд╕рдм рдХреБрдЫ kd.exe рдХреЗ рд╕рд╛рде рд╕рд╛рджреГрд╢реНрдп рджреНрд╡рд╛рд░рд╛ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, windbg.exe рджреНрд╡рд╛рд░рд╛ рдкреНрд░рд╛рдкреНрдд рддрд░реНрдХ рдФрд░ рдЖрджреЗрд╢ рд▓рдЧрднрдЧ kd.exe рдХреЗ рд╕рдорд╛рди рд╣реИрдВ

 @echo off windbg.exe -z "%1" -sup -y ^ "srv*C:\Symbols*http://msdl.microsoft.com/download/symbols" -i "srv*C:\Symbols*http://msdl.microsoft.com/download/symbols" -c "!analyze -v; !cpuid; !sysinfo cpuinfo; !sysinfo cpuspeed; !sysinfo machineid" exit /b 

рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк, рдбреАрдмрдЧрд░ рдореЗрдВ рдбрдВрдк рддреБрд░рдВрдд рдЦреБрд▓ рдЬрд╛рдПрдЧрд╛ рдФрд░ -c рдХреБрдВрдЬреА рдореЗрдВ рд╕реВрдЪреАрдмрджреНрдз рдХрдорд╛рдВрдб рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдЗрд╕рдореЗрдВ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рд╣реЛ рдЬрд╛рдПрдВрдЧреЗред

рдирд┐рд╖реНрдХрд░реНрд╖ рдЗрд╕ рдЕрдВрддрд░ рдХреЗ рд╕рд╛рде рдкрд╣рд▓реЗ рд╡рд┐рдХрд▓реНрдк рдХреЗ рд╕рдорд╛рди рд╣реИ рдХрд┐ рдбрдВрдк рд╡рд┐рдВрдбрдмрдЧ рдореЗрдВ рддреБрд░рдВрдд рдЦреЛрд▓рд╛ рдЬрд╛рддрд╛ рд╣реИ, рд╕рдВрдЪрд╛рд░рд┐рдд рдХрдорд╛рдВрдб рд╕реВрдЪреА рдореЗрдВ рдХреНрдпреВ рдХрдорд╛рдВрдб рдХреА рдЕрдиреБрдкрд╕реНрдерд┐рддрд┐ рдХреЗ рдХрд╛рд░рдг рдЖрдЧреЗ рдХреЗ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХреЗ рд▓рд┐рдП рдХрдорд╛рдВрдб рджрд░реНрдЬ рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реИред

(рд╡реИрд╕реЗ, рдпрджрд┐ kd.exe рдХреЗ рд╕рд╛рде рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рдкрд┐рдЫрд▓реЗ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдореЗрдВ рдЖрдк -c рддрд░реНрдХ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдХрдорд╛рдВрдб рдХреА рд╕реВрдЪреА рдореЗрдВ рдкрд╛рд░рд┐рдд q рдХрдорд╛рдВрдб рд╣рдЯрд╛рддреЗ рд╣реИрдВ, рддреЛ рдбрдВрдк рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдирд╛ рдЬрд╛рд░реА рд░рдЦрдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рд╡рд╣рд╛рдВ рджрд┐рдЦрд╛рдИ рджреЗрдЧреА, рдЬрд┐рд╕рдореЗрдВ рд▓реЙрдЧ рдХреЛ рд╕реАрдзреЗ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдореЗрдВ рд░рд┐рдХреЙрд░реНрдб рдХрд░рдирд╛ рд╢рд╛рдорд┐рд▓ рд╣реИред)

рдЪрд┐рдХрдиреЗ рдирд┐рд░реНрдорд╛рдг


рдЕрдм рдЗрд╕ рд╕рдм рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рддрд╛рдХрд┐ рдЖрдк рд╕рдВрджрд░реНрдн рдореЗрдиреВ рдореЗрдВ * .dmp рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдмрд╛рдБрдз рд╕рдХреЗрдВред рджрд░рдЕрд╕рд▓, рдЗрд╕рдХреЗ рд▓рд┐рдП рдХреНрдпрд╛ рдХрд░рдирд╛ рдерд╛ред

рдпрд╣рд╛рдБ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд "рд╡рди-рд▓рд╛рдЗрдирд░реНрд╕" рд╣реИрдВ:

рдХрдВрд╕реЛрд▓ рдЖрдЙрдЯрдкреБрдЯ рдлрд╝рд┐рд▓реНрдЯрд░рд┐рдВрдЧ рдХреЗ рд╕рд╛рде рд╡рд┐рдХрд▓реНрдк рдХреЗ рд▓рд┐рдП

 cmd /d /k mode con: cols=170 & color F0 & title "%1" & kd.exe -nosqm -sup -z "%1" -y srv*"C:\Symbols"*http://msdl.microsoft.com/download/symbols -i srv*"C:\Symbols"*http://msdl.microsoft.com/download/symbols -c "!analyze -v; !cpuid; !sysinfo cpuinfo; !sysinfo cpuspeed; !sysinfo machineid; q" | findstr /r /v /c:"^\*\*\* .* \*\*\*" /c:"^\*\*\*\*\*\*\*\*\*\*\*\*\*\*.*" 

рдХрдВрд╕реЛрд▓ рдЖрдЙрдЯрдкреБрдЯ рдХреЛ рдлрд╝рд┐рд▓реНрдЯрд░ рдХрд░рдиреЗ рдФрд░ рд▓реЙрдЧ рдлрд╝рд╛рдЗрд▓ рдмрдирд╛рдиреЗ рдХреЗ рд╡рд┐рдХрд▓реНрдк рдХреЗ рд▓рд┐рдП
(рдПрдХ рдЖрд╡рд░реНрддреА рдЪрд░ рд╡рд┐рд╕реНрддрд╛рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдкрдбрд╝рд╛)

 cmd /d /v /k mode con: cols=170 & color F0 & title "%1" & set "D=%1"& set L=!D:.dmp=.LOG! & kd.exe -nosqm -sup -loga "!L!" -z "!D!" -y srv*"C:\Symbols"*http://msdl.microsoft.com/download/symbols -i srv*"C:\Symbols"*http://msdl.microsoft.com/download/symbols -c "!analyze -v; !cpuid; !sysinfo cpuinfo; !sysinfo cpuspeed; !sysinfo machineid; q" | findstr /r /v /c:"^\*\*\* .* \*\*\*" /c:"^\*\*\*\*\*\*\*\*\*\*\*\*\*\*.*" 

рд╕реАрдзреЗ windbg.exe рдореЗрдВ рдПрдХ рдбрдВрдк рдЦреЛрд▓рдиреЗ рдХреЗ рд▓рд┐рдП

 "C:\Portable\Debug\windbg.exe" -z "%1" -sup -y "srv*C:\Symbols*http://msdl.microsoft.com/download/symbols" -i "srv*C:\Symbols*http://msdl.microsoft.com/download/symbols" -c "!analyze -v; !cpuid; !sysinfo cpuinfo; !sysinfo cpuspeed; !sysinfo machineid" 

рд░рдЬрд┐рд╕реНрдЯреНрд░реА рдореЗрдВ, рдореИрдВрдиреЗ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╡рд┐рднрд╛рдЬрди рд╕рдВрд░рдЪрдирд╛ рдмрдирд╛рдИ:



рд░рдЬрд┐рд╕реНрдЯреНрд░реА рдХреБрдВрдЬрд┐рдпреЛрдВ рдореЗрдВ рдПрдХ рдЕрд▓рдЧ рдкреНрд░рдХрд╛рд░ рдХреА dmp_geek рдлрд╝рд╛рдЗрд▓ рдмрдирд╛рдИ рдЧрдИ рдереА рдЬрд┐рд╕рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди рдХрд┐рдП рдЧрдП рдереЗред * .Dmp рдПрдХреНрд╕рдЯреЗрдВрд╢рди рд╡рд╛рд▓реА рдлрд╛рдЗрд▓реЛрдВ рдХреЛ dmp_geek рдкреНрд░рдХрд╛рд░ рдХреА рдлрд╛рдЗрд▓реЗрдВ рд╕реМрдВрдкреА рдЧрдИ рд╣реИрдВред

рдкреНрд░рддреНрдпреЗрдХ рдХрдорд╛рдВрдб рд╕реЗрдХреНрд╢рди рдореЗрдВ, рдЖрдЗрдХрдиреНрд╕ рдХреЗ рд░реВрдк рдореЗрдВ рд╕рдВрдмрдВрдзрд┐рдд рд╕рд┐рдВрдЧрд▓-рд▓рд╛рдЗрди + рдкреНрд░реАрдЯреАрдиреЗрд╕ рдФрд░ рд╕рдВрджрд░реНрдн рдореЗрдиреВ рдореЗрдВ рдкреНрд░рджрд░реНрд╢рд┐рдд рдЖрдЗрдЯрдо рдирд╛рдореЛрдВ рдХреЗ рд▓рд┐рдП рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдирд╛рдо рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдкреИрд░рд╛рдореАрдЯрд░ рдореЗрдВ рдЬреЛрдбрд╝реЗ рдЧрдП рдереЗред



рдЗрд╕рдиреЗ рдПрдХ рдРрд╕рд╛ рдореЛрдбрд╝ рджрд┐рдпрд╛, рдЬреЛ рдХрдВрд╕реЛрд▓ рдореЗрдВ рдФрд░ рдбрд┐рдмрдЧрд░ рдореЗрдВ "рдХрдЪрд░рд╛" рдХреЛ рдЫрд╛рдирдиреЗ рдФрд░ рдЖрд╡рд╢реНрдпрдХ рд░реВрдк рд╕реЗ рдкреНрд░рддреНрдпреЗрдХ рдбрдВрдк рдХреЗ рд▓рд┐рдП рд▓реЙрдЧ рдмрдирд╛рдиреЗ рдХреЗ рд╕рд╛рде рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рдЪрдпрдирд┐рдд рдбрдВрдк рдХреЛ рдмрдбрд╝реЗ рдкреИрдорд╛рдиреЗ рдкрд░ рдЦреЛрд▓рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рдХреЛ рдЬреЛрдбрд╝рддрд╛ рд╣реИред рдЗрд╕рд╕реЗ рд╕рдордп рдХреА рдХрд╛рдлреА рдмрдЪрдд рд╣реЛрддреА рд╣реИред

рд░рдЬрд┐рд╕реНрдЯреНрд░реА рдХрд╛ рдореБрдХрд╛рдмрд▓рд╛ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдЙрдкрдпреЛрдЧ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рдЕрдВрддрд┐рдо REG рдлрд╝рд╛рдЗрд▓ рдХреЗ рд▓рд┐рдП рд╕рдм рдХреБрдЫ рдирд┐рд░реНрдпрд╛рдд рдХрд┐рдпрд╛ред

REG рдлрд╝рд╛рдЗрд▓ рдХреА рд╕рд╛рдордЧреНрд░реА
 Windows Registry Editor Version 5.00 [HKEY_CLASSES_ROOT\.dmp] @="dmp_geek" [HKEY_CLASSES_ROOT\dmp_geek] @="dmp_geek" "FriendlyTypeName"=" " [HKEY_CLASSES_ROOT\dmp_geek\DefaultIcon] @="imageres.dll,142" [HKEY_CLASSES_ROOT\dmp_geek\shell] [HKEY_CLASSES_ROOT\dmp_geek\shell\kd.exe] "MUIVerb"="Kd.exe" "Icon"="C:\\Portable\\Debug\\windbg.exe,6" [HKEY_CLASSES_ROOT\dmp_geek\shell\kd.exe\command] @="cmd /d /k mode con: cols=170 & color F0 & title \"%1\" & \"C:\\Portable\\Debug\\kd.exe\" -nosqm -sup -z \"%1\" -y srv*\"C:\\Symbols\"*http://msdl.microsoft.com/download/symbols -i srv*\"C:\\Symbols\"*http://msdl.microsoft.com/download/symbols -c \"!analyze -v; !cpuid; !sysinfo cpuinfo; !sysinfo cpuspeed; !sysinfo machineid; q\" | findstr /r /v /c:\"^\\*\\*\\* .* \\*\\*\\*\" /c:\"^\\*\\*\\*\\*\\*\\*\\*\\*\\*\\*\\*\\*\\*\\*.*\"" [HKEY_CLASSES_ROOT\dmp_geek\shell\kd.exe_-loga] "MUIVerb"="Kd.exe -loga" "Icon"="C:\\Portable\\Debug\\windbg.exe,6" [HKEY_CLASSES_ROOT\dmp_geek\shell\kd.exe_-loga\command] @="cmd /d /v /k mode con: cols=170 & color F0 & title \"%1\" & set \"D=%1\"& set L=!D:.dmp=.LOG! & \"C:\\Portable\\Debug\\kd.exe\" -nosqm -sup -loga \"!L!\" -z \"!D!\" -y srv*\"C:\\Symbols\"*http://msdl.microsoft.com/download/symbols -i srv*\"C:\\Symbols\"*http://msdl.microsoft.com/download/symbols -c \"!analyze -v; !cpuid; !sysinfo cpuinfo; !sysinfo cpuspeed; !sysinfo machineid; q\" | findstr /r /v /c:\"^\\*\\*\\* .* \\*\\*\\*\" /c:\"^\\*\\*\\*\\*\\*\\*\\*\\*\\*\\*\\*\\*\\*\\*.*\"" [HKEY_CLASSES_ROOT\dmp_geek\shell\Open] "MUIVerb"="Windbg" "Icon"="C:\\Portable\\Debug\\windbg.exe,6" [HKEY_CLASSES_ROOT\dmp_geek\shell\Open\command] @="\"C:\\Portable\\Debug\\windbg.exe\" -z \"%1\" -sup -y \"srv*C:\\Symbols*http://msdl.microsoft.com/download/symbols\" -i \"srv*C:\\Symbols*http://msdl.microsoft.com/download/symbols\" -c \"!analyze -v; !cpuid; !sysinfo cpuinfo; !sysinfo cpuspeed; !sysinfo machineid\"" 

тЖТ Ya.Disk GEEK_DMP.reg рд╕реЗ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░реЗрдВ

рд╡рд╣ рд╕рдм рд╣реИред рдЕрдм рдЖрдк рдЬрд▓реНрджреА рд╕реЗ, рд╕рддрд╣реА рд░реВрдк рд╕реЗ, рддреБрд░рдВрдд рдбрдВрдк рдХреЗ рдПрдХ рдЧреБрдЪреНрдЫрд╛ рдХрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

Source: https://habr.com/ru/post/hi409397/


All Articles