1b6cee71dSXin LI 2b6cee71dSXin LI#------------------------------------------------------------------------------ 3*3e41d09dSXin LI# $File: msvc,v 1.6 2016/01/26 00:03:19 christos Exp $ 4b6cee71dSXin LI# msvc: file(1) magic for msvc 5b6cee71dSXin LI# "H. Nanosecond" <aldomel@ix.netcom.com> 6b6cee71dSXin LI# Microsoft visual C 7b6cee71dSXin LI# 8b6cee71dSXin LI# I have version 1.0 9b6cee71dSXin LI 10b6cee71dSXin LI# .aps 11b6cee71dSXin LI0 string HWB\000\377\001\000\000\000 Microsoft Visual C .APS file 12b6cee71dSXin LI 13b6cee71dSXin LI# .ide 14b6cee71dSXin LI#too long 0 string \102\157\162\154\141\156\144\040\103\053\053\040\120\162\157\152\145\143\164\040\106\151\154\145\012\000\032\000\002\000\262\000\272\276\372\316 MSVC .ide 15b6cee71dSXin LI0 string \102\157\162\154\141\156\144\040\103\053\053\040\120\162\157 MSVC .ide 16b6cee71dSXin LI 17b6cee71dSXin LI# .res 18b6cee71dSXin LI0 string \000\000\000\000\040\000\000\000\377 MSVC .res 19b6cee71dSXin LI0 string \377\003\000\377\001\000\020\020\350 MSVC .res 20b6cee71dSXin LI0 string \377\003\000\377\001\000\060\020\350 MSVC .res 21b6cee71dSXin LI 22b6cee71dSXin LI#.lib 23b6cee71dSXin LI0 string \360\015\000\000 Microsoft Visual C library 24b6cee71dSXin LI0 string \360\075\000\000 Microsoft Visual C library 25b6cee71dSXin LI0 string \360\175\000\000 Microsoft Visual C library 26b6cee71dSXin LI 27b6cee71dSXin LI#.pch 28b6cee71dSXin LI0 string DTJPCH0\000\022\103\006\200 Microsoft Visual C .pch 29b6cee71dSXin LI 30*3e41d09dSXin LI# Summary: Symbol Table / Debug info used by Microsoft compilers 31*3e41d09dSXin LI# URL: https://en.wikipedia.org/wiki/Program_database 32*3e41d09dSXin LI# Reference: https://code.google.com/p/pdbparser/wiki/MSF_Format 33*3e41d09dSXin LI# Update: Joerg Jenderek 34*3e41d09dSXin LI# Note: test only for Windows XP+SP3 x86 , 8.1 x64 arm and 10.1 x86 35*3e41d09dSXin LI# info does only applies partly for older files like msvbvm50.pdb about year 2001 36*3e41d09dSXin LI0 string Microsoft\ C/C++\ 37*3e41d09dSXin LI# "Microsoft Program DataBase" by TrID 38*3e41d09dSXin LI>24 search/14 \r\n\x1A MSVC program database 39*3e41d09dSXin LI!:mime application/x-ms-pdb 40*3e41d09dSXin LI!:ext pdb 41*3e41d09dSXin LI# "MSF 7.00" "program database 2.00" for msvbvm50.pdb 42*3e41d09dSXin LI>>16 regex \([0-9.]+\) ver %s 43*3e41d09dSXin LI#>>>0x38 search/128123456 /LinkInfo \b with linkinfo 44*3e41d09dSXin LI# "MSF 7.00" variant 45*3e41d09dSXin LI>>0x1e leshort 0 46*3e41d09dSXin LI# PageSize 400h 1000h 47*3e41d09dSXin LI>>>0x20 lelong x \b, %d 48*3e41d09dSXin LI# Page Count 49*3e41d09dSXin LI>>>0x28 lelong x \b*%d bytes 50*3e41d09dSXin LI# "program database 2.00" variant 51*3e41d09dSXin LI>>0x1e leshort !0 52*3e41d09dSXin LI# PageSize 400h 53*3e41d09dSXin LI>>>0x2c lelong x \b, %d 54*3e41d09dSXin LI# Page Count for msoo-dll.pdb 4379h 55*3e41d09dSXin LI>>>0x32 leshort x \b*%d bytes 56b6cee71dSXin LI 57b6cee71dSXin LI#.sbr 58b6cee71dSXin LI0 string \000\002\000\007\000 MSVC .sbr 59b6cee71dSXin LI>5 string >\0 %s 60b6cee71dSXin LI 61b6cee71dSXin LI#.bsc 62b6cee71dSXin LI0 string \002\000\002\001 MSVC .bsc 63b6cee71dSXin LI 64b6cee71dSXin LI#.wsp 65b6cee71dSXin LI0 string 1.00\ .0000.0000\000\003 MSVC .wsp version 1.0000.0000 66b6cee71dSXin LI# these seem to start with the version and contain menus 67