msvc revision 303975
198944Sobrien
298944Sobrien#------------------------------------------------------------------------------
398944Sobrien# $File: msvc,v 1.6 2016/01/26 00:03:19 christos Exp $
498944Sobrien# msvc:  file(1) magic for msvc
598944Sobrien# "H. Nanosecond" <aldomel@ix.netcom.com>
698944Sobrien# Microsoft visual C
798944Sobrien# 
819370Spst# I have version 1.0
998944Sobrien
1019370Spst# .aps
1198944Sobrien0	string	HWB\000\377\001\000\000\000	Microsoft Visual C .APS file
1298944Sobrien
1398944Sobrien# .ide
1498944Sobrien#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
1519370Spst0	string	\102\157\162\154\141\156\144\040\103\053\053\040\120\162\157	MSVC .ide
1698944Sobrien
1798944Sobrien# .res
1898944Sobrien0	string	\000\000\000\000\040\000\000\000\377	MSVC .res
1998944Sobrien0	string	\377\003\000\377\001\000\020\020\350	MSVC .res
2019370Spst0	string	\377\003\000\377\001\000\060\020\350	MSVC .res
2198944Sobrien
2298944Sobrien#.lib
2398944Sobrien0	string	\360\015\000\000	Microsoft Visual C library
2498944Sobrien0	string	\360\075\000\000	Microsoft Visual C library
2519370Spst0	string	\360\175\000\000	Microsoft Visual C library
2698944Sobrien
2798944Sobrien#.pch
2819370Spst0	string	DTJPCH0\000\022\103\006\200	Microsoft Visual C .pch
2998944Sobrien
3019370Spst# Summary: Symbol Table / Debug info used by Microsoft compilers
3198944Sobrien# URL: https://en.wikipedia.org/wiki/Program_database
3219370Spst# Reference: https://code.google.com/p/pdbparser/wiki/MSF_Format
3398944Sobrien# Update: Joerg Jenderek 
3498944Sobrien# Note:	test only for Windows XP+SP3 x86 , 8.1 x64 arm and 10.1 x86
3598944Sobrien#	info does only applies partly for older files like msvbvm50.pdb about year 2001
360	string	Microsoft\ C/C++\ 	
37# "Microsoft Program DataBase" by TrID
38>24	search/14	\r\n\x1A	MSVC program database
39!:mime	application/x-ms-pdb
40!:ext	pdb
41# "MSF 7.00" "program database 2.00" for msvbvm50.pdb
42>>16	regex	\([0-9.]+\)	ver %s
43#>>>0x38	search/128123456	/LinkInfo	\b with linkinfo
44# "MSF 7.00" variant
45>>0x1e	leshort	0	
46# PageSize 400h 1000h
47>>>0x20	lelong	x	\b, %d
48# Page Count
49>>>0x28	lelong	x	\b*%d bytes
50# "program database 2.00"  variant
51>>0x1e	leshort	!0	
52# PageSize 400h
53>>>0x2c	lelong	x	\b, %d
54# Page Count for msoo-dll.pdb 4379h
55>>>0x32	leshort	x	\b*%d bytes
56
57#.sbr
580	string	\000\002\000\007\000	MSVC .sbr
59>5	string 	>\0	%s
60
61#.bsc
620	string	\002\000\002\001	MSVC .bsc
63
64#.wsp
650	string	1.00\ .0000.0000\000\003	MSVC .wsp version 1.0000.0000
66# these seem to start with the version and contain menus
67