The MASM Forum

Projects => Rarely Used Projects => RosAsm => Topic started by: guga on July 20, 2014, 02:42:06 PM

Title: MSDia SDk 120
Post by: guga on July 20, 2014, 02:42:06 PM
For those who wants to give a try on msdia Sdk v1.20 (The last one for Visual Studio 2.013), i uploaded it here (https://mega.co.nz/#!zwJFFbgK!V8-5gDT28pH32Kg1DEw71BEVj5LuOKIlpDYKk-nK10Q)
Title: Re: MSDia SDk 120
Post by: guga on July 21, 2014, 08:57:11 AM
The diasdk 120 is really good. Although, a bit hard to program at 1st because it is not fully documented (I mean, it is not updated as seen here (http://msdn.microsoft.com/pt-br/library/4e1az5wt.aspx). On the link it is missing the interface enumeration)

But...here is a piece of data i suceeded to parse from mfc42.pdb based on the russian guy parser i told on another thread (http://masm32.com/board/index.php?topic=3414.msg36043#msg36043)

So far, i suceeded to make an app that parses Enums and UDTs(missing now to build the typedefs)

The format is in ascii and each data is separated with a "|" sign

For the head of an UDT the symbols are:
UDT|Symbol Type|SymbolName|Symbol Lenght|0:0:0|SymbolType Id


UDT|struct|HWND__|4|0:0:0|1
UDT|struct|HDC__|4|0:0:0|2
UDT|struct|HBRUSH__|4|0:0:0|3
UDT|struct|tagRECT|16|0:0:0|4
UDT|struct|CStringData|12|0:0:0|5
UDT|struct|CRuntimeClass|24|0:0:0|6
UDT|class|CObject|4|0:0:0|7
UDT|struct|CRuntimeClass|24|0:0:0|8
UDT|class|CArchive|68|0:0:0|9
UDT|struct|AFX_CLASSINIT|1|0:0:0|10
UDT|struct|AFX_EXCEPTION_LINK|8|0:0:0|11
UDT|class|CException|8|0:0:0|12
UDT|class|CSimpleList|8|0:0:0|13
UDT|class|CSimpleList|8|0:0:0|14
UDT|class|CNoTrackObject|4|0:0:0|15
UDT|class|CNoTrackObject|4|0:0:0|16
UDT|class|CTypeLibCache|36|0:0:0|17
UDT|struct|ITypeLib|4|0:0:0|18
UDT|struct|_GUID|16|0:0:0|19
UDT|struct|_GUID|16|0:0:0|20
UDT|struct|ITypeInfo|4|0:0:0|21
UDT|class|CByteArray|20|0:0:0|22
UDT|class|CByteArray|20|0:0:0|23
UDT|class|CWordArray|20|0:0:0|24
UDT|class|CWordArray|20|0:0:0|25
UDT|class|CDWordArray|20|0:0:0|26
UDT|class|CDWordArray|20|0:0:0|27
UDT|class|CUIntArray|20|0:0:0|28
UDT|class|CUIntArray|20|0:0:0|29
UDT|class|CPtrArray|20|0:0:0|30
UDT|class|CPtrArray|20|0:0:0|31
UDT|class|CObArray|20|0:0:0|32
UDT|class|CObArray|20|0:0:0|33
UDT|class|CObject|4|0:0:0|34
UDT|class|CDumpContext|8|0:0:0|35
UDT|class|CStringArray|20|0:0:0|36
UDT|class|CStringArray|20|0:0:0|37
UDT|class|CString|4|0:0:0|38
UDT|class|CString|4|0:0:0|39
UDT|class|CPtrList|28|0:0:0|40
UDT|class|CPtrList|28|0:0:0|41
UDT|struct|CPtrList::CNode|12|0:0:0|42
UDT|struct|__POSITION|1|0:0:0|43
UDT|struct|CPlex|4|0:0:0|44
UDT|class|CObList|28|0:0:0|45
UDT|class|CObList|28|0:0:0|46
UDT|struct|CObList::CNode|12|0:0:0|47
UDT|class|CStringList|28|0:0:0|48
UDT|class|CStringList|28|0:0:0|49
UDT|struct|CStringList::CNode|12|0:0:0|50
UDT|struct|CStringList::CNode|12|0:0:0|51
UDT|class|CMapWordToPtr|28|0:0:0|52
UDT|class|CMapWordToPtr|28|0:0:0|53
UDT|struct|CMapWordToPtr::CAssoc|12|0:0:0|54
UDT|class|CMapPtrToWord|28|0:0:0|55
UDT|class|CMapPtrToWord|28|0:0:0|56
UDT|struct|CMapPtrToWord::CAssoc|12|0:0:0|57
UDT|class|CMapPtrToPtr|28|0:0:0|58
UDT|class|CMapPtrToPtr|28|0:0:0|59
UDT|struct|CMapPtrToPtr::CAssoc|12|0:0:0|60
UDT|class|CMapWordToOb|28|0:0:0|61
UDT|class|CMapWordToOb|28|0:0:0|62
UDT|struct|CMapWordToOb::CAssoc|12|0:0:0|63
UDT|class|CMapStringToPtr|28|0:0:0|64
UDT|class|CMapStringToPtr|28|0:0:0|65
UDT|struct|CMapStringToPtr::CAssoc|16|0:0:0|66
UDT|class|CMapStringToOb|28|0:0:0|67
UDT|class|CMapStringToOb|28|0:0:0|68
UDT|struct|CMapStringToOb::CAssoc|16|0:0:0|69
UDT|class|CMapStringToString|28|0:0:0|70
UDT|class|CMapStringToString|28|0:0:0|71
UDT|struct|CMapStringToString::CAssoc|16|0:0:0|72
UDT|class|CArchive|68|0:0:0|73
UDT|class|CFile|16|0:0:0|74
UDT|class|CDocument|84|0:0:0|75
UDT|class|CDumpContext|8|0:0:0|76
UDT|class|CException|8|0:0:0|77
UDT|class|CSimpleException|152|0:0:0|78
UDT|class|CMemoryException|152|0:0:0|79
UDT|class|CMemoryException|152|0:0:0|80
UDT|class|CNotSupportedException|152|0:0:0|81
UDT|class|CNotSupportedException|152|0:0:0|82
UDT|class|CArchiveException|16|0:0:0|83
UDT|class|CArchiveException|16|0:0:0|84
UDT|class|CFileException|20|0:0:0|85
UDT|class|CFileException|20|0:0:0|86
UDT|class|CFile|16|0:0:0|87
UDT|struct|CFileStatus|280|0:0:0|88
UDT|struct|CFileStatus|280|0:0:0|89
UDT|class|CFileFind|28|0:0:0|90
UDT|class|CFileFind|28|0:0:0|91
UDT|class|CTime|4|0:0:0|92
UDT|struct|_FILETIME|8|0:0:0|93
UDT|class|CTimeSpan|4|0:0:0|94
UDT|class|CTimeSpan|4|0:0:0|95
UDT|struct|_FILETIME|8|0:0:0|96
UDT|struct|_SYSTEMTIME|16|0:0:0|97
UDT|struct|_SYSTEMTIME|16|0:0:0|98
UDT|class|CTime|4|0:0:0|99
UDT|struct|tm|36|0:0:0|100
UDT|struct|HINSTANCE__|4|0:0:0|101
UDT|class|CWinThread|108|0:0:0|102
UDT|class|CCmdTarget|32|0:0:0|103
UDT|class|CWinThread|108|0:0:0|104
UDT|struct|_SECURITY_ATTRIBUTES|12|0:0:0|105
UDT|class|CWnd|64|0:0:0|106
UDT|struct|tagMSG|28|0:0:0|107
UDT|struct|tagMSG|28|0:0:0|108
UDT|class|COleMessageFilter|68|0:0:0|109
UDT|class|CPoint|8|0:0:0|110
UDT|class|AFX_MODULE_STATE|4240|0:0:0|111
UDT|class|AFX_MODULE_STATE|4240|0:0:0|112
UDT|class|CWinApp|196|0:0:0|113
UDT|class|CTypedSimpleList<CRuntimeClass *>|8|0:0:0|114
UDT|class|COleObjectFactory|76|0:0:0|115
UDT|class|CTypedSimpleList<COleObjectFactory *>|8|0:0:0|116
UDT|class|CTypedSimpleList<CDynLinkLibrary *>|8|0:0:0|117
UDT|class|COccManager|4|0:0:0|118
UDT|class|CTypedSimpleList<COleControlLock *>|8|0:0:0|119
UDT|class|_AFX_DAO_STATE|40|0:0:0|120
UDT|class|CTypeLibCacheMap|28|0:0:0|121
UDT|class|CThreadLocal<AFX_MODULE_THREAD_STATE>|4|0:0:0|122
UDT|struct|AFX_MAINTAIN_STATE|4|0:0:0|123
UDT|struct|AFX_MAINTAIN_STATE2|8|0:0:0|124
UDT|class|_AFX_THREAD_STATE|280|0:0:0|125
UDT|class|CSize|8|0:0:0|126
UDT|struct|tagSIZE|8|0:0:0|127
UDT|struct|tagPOINT|8|0:0:0|128
UDT|class|CSize|8|0:0:0|129
UDT|class|CRect|16|0:0:0|130
UDT|struct|tagRECT|16|0:0:0|131
UDT|class|CPoint|8|0:0:0|132
UDT|class|CRect|16|0:0:0|133
UDT|class|CResourceException|152|0:0:0|134
UDT|class|CResourceException|152|0:0:0|135
UDT|class|CUserException|152|0:0:0|136
UDT|class|CUserException|152|0:0:0|137
UDT|class|CGdiObject|8|0:0:0|138
UDT|class|CGdiObject|8|0:0:0|139
UDT|class|CPen|8|0:0:0|140
UDT|class|CPen|8|0:0:0|141
UDT|struct|HPEN__|4|0:0:0|142
UDT|struct|tagLOGBRUSH|12|0:0:0|143
UDT|struct|tagLOGBRUSH|12|0:0:0|144
UDT|struct|tagLOGPEN|16|0:0:0|145
UDT|struct|tagEXTLOGPEN|28|0:0:0|146
UDT|class|CBrush|8|0:0:0|147
UDT|class|CBrush|8|0:0:0|148
UDT|class|CBitmap|8|0:0:0|149
UDT|class|CBitmap|8|0:0:0|150
UDT|struct|HBITMAP__|4|0:0:0|151
UDT|struct|_COLORMAP|8|0:0:0|152
UDT|struct|tagBITMAP|24|0:0:0|153
UDT|class|CDC|16|0:0:0|154
UDT|class|CFont|8|0:0:0|155
UDT|class|CFont|8|0:0:0|156
UDT|struct|HFONT__|4|0:0:0|157
UDT|struct|tagLOGFONTA|60|0:0:0|158
UDT|struct|tagLOGFONTA|60|0:0:0|159
UDT|class|CDC|16|0:0:0|160
UDT|class|CPalette|8|0:0:0|161
UDT|struct|_devicemodeA|148|0:0:0|162
UDT|struct|_devicemodeA|148|0:0:0|163
UDT|class|CRgn|8|0:0:0|164
UDT|struct|tagCOLORADJUSTMENT|24|0:0:0|165
UDT|struct|tagCOLORADJUSTMENT|24|0:0:0|166
UDT|struct|tagPOINT|8|0:0:0|167
UDT|struct|HICON__|4|0:0:0|168
UDT|struct|tagTEXTMETRICA|56|0:0:0|169
UDT|struct|_ABCFLOAT|12|0:0:0|170
UDT|struct|_ABC|12|0:0:0|171
UDT|struct|tagKERNINGPAIR|8|0:0:0|172
UDT|struct|_OUTLINETEXTMETRICA|212|0:0:0|173
UDT|struct|_GLYPHMETRICS|20|0:0:0|174
UDT|struct|_MAT2|16|0:0:0|175
UDT|struct|_MAT2|16|0:0:0|176
UDT|struct|_DOCINFOA|20|0:0:0|177
UDT|struct|HENHMETAFILE__|4|0:0:0|178
UDT|struct|HMETAFILE__|4|0:0:0|179
UDT|class|CPalette|8|0:0:0|180
UDT|struct|HPALETTE__|4|0:0:0|181
UDT|struct|tagLOGPALETTE|8|0:0:0|182
UDT|struct|tagPALETTEENTRY|4|0:0:0|183
UDT|class|CRgn|8|0:0:0|184
UDT|struct|HRGN__|4|0:0:0|185
UDT|struct|tagXFORM|24|0:0:0|186
UDT|struct|tagXFORM|24|0:0:0|187
UDT|struct|_RGNDATA|36|0:0:0|188
UDT|struct|_RGNDATA|36|0:0:0|189
UDT|struct|_RGNDATAHEADER|32|0:0:0|190
UDT|class|CWnd|64|0:0:0|191
UDT|struct|CCreateContext|20|0:0:0|192
UDT|struct|HMENU__|4|0:0:0|193
UDT|struct|tagSIZE|8|0:0:0|194
UDT|struct|IUnknown|4|0:0:0|195
UDT|struct|tagCREATESTRUCTA|48|0:0:0|196
UDT|class|CFrameWnd|192|0:0:0|197
UDT|class|CMenu|8|0:0:0|198
UDT|struct|tagWINDOWPLACEMENT|44|0:0:0|199
UDT|struct|tagWINDOWPLACEMENT|44|0:0:0|200
UDT|struct|tagPAINTSTRUCT|64|0:0:0|201
UDT|struct|tagTOOLINFOA|44|0:0:0|202
UDT|class|CScrollBar|64|0:0:0|203
UDT|struct|tagSCROLLINFO|28|0:0:0|204
UDT|struct|HTASK__|4|0:0:0|205
UDT|struct|tagCOPYDATASTRUCT|12|0:0:0|206
UDT|struct|tagMINMAXINFO|40|0:0:0|207
UDT|struct|tagHELPINFO|28|0:0:0|208
UDT|struct|tagWINDOWPOS|28|0:0:0|209
UDT|struct|tagNCCALCSIZE_PARAMS|52|0:0:0|210
UDT|struct|HDROP__|4|0:0:0|211
UDT|struct|tagCOMPAREITEMSTRUCT|32|0:0:0|212
UDT|struct|tagDELETEITEMSTRUCT|20|0:0:0|213
UDT|struct|tagDRAWITEMSTRUCT|48|0:0:0|214
UDT|struct|tagMEASUREITEMSTRUCT|24|0:0:0|215
UDT|class|CListBox|64|0:0:0|216
UDT|struct|tagSTYLESTRUCT|8|0:0:0|217
UDT|class|CDataExchange|16|0:0:0|218
UDT|class|COleControlSite|224|0:0:0|219
UDT|struct|tagVARIANT|16|0:0:0|220
UDT|class|COleDropTarget|56|0:0:0|221
UDT|struct|DLGTEMPLATE|18|0:0:0|222
UDT|struct|DLGTEMPLATE|18|0:0:0|223
UDT|class|COleControlContainer|88|0:0:0|224
UDT|struct|_AFX_OCC_DIALOG_INFO|8|0:0:0|225
UDT|class|CHandleMap|68|0:0:0|226
UDT|struct|AFX_MSGMAP_ENTRY|24|0:0:0|227
UDT|struct|AFX_MSGMAP_ENTRY|24|0:0:0|228
UDT|struct|AFX_MSGMAP|8|0:0:0|229
UDT|struct|AFX_MSGMAP|8|0:0:0|230
UDT|struct|_POINTL|8|0:0:0|231
UDT|struct|tagPANOSE|10|0:0:0|232
UDT|struct|_FIXED|4|0:0:0|233
UDT|class|CMenu|8|0:0:0|234
UDT|struct|tagMENUITEMINFOA|44|0:0:0|235
UDT|class|CCmdUI|40|0:0:0|236
UDT|class|CCmdUI|40|0:0:0|237
UDT|class|CFrameWnd|192|0:0:0|238
UDT|class|CView|68|0:0:0|239
UDT|class|CControlBar|124|0:0:0|240
UDT|class|CDockBar|168|0:0:0|241
UDT|class|CDockState|72|0:0:0|242
UDT|class|CDockState|72|0:0:0|243
UDT|struct|CPrintPreviewState|24|0:0:0|244
UDT|struct|HACCEL__|4|0:0:0|245
UDT|class|COleFrameHook|76|0:0:0|246
UDT|class|CMiniDockFrameWnd|376|0:0:0|247
UDT|struct|AFX_CMDHANDLERINFO|8|0:0:0|248
UDT|struct|tagNMHDR|12|0:0:0|249
UDT|class|CDialog|96|0:0:0|250
UDT|class|CDialog|96|0:0:0|251
UDT|class|CStatic|64|0:0:0|252
UDT|class|CStatic|64|0:0:0|253
UDT|class|CButton|64|0:0:0|254
UDT|class|CButton|64|0:0:0|255
UDT|class|CListBox|64|0:0:0|256
UDT|class|CCheckListBox|72|0:0:0|257
UDT|class|CCheckListBox|72|0:0:0|258
UDT|class|CComboBox|64|0:0:0|259
UDT|class|CComboBox|64|0:0:0|260
UDT|class|CEdit|64|0:0:0|261
UDT|class|CEdit|64|0:0:0|262
UDT|class|CScrollBar|64|0:0:0|263
UDT|class|CMDIFrameWnd|196|0:0:0|264
UDT|class|CMDIFrameWnd|196|0:0:0|265
UDT|class|CMDIChildWnd|200|0:0:0|266
UDT|class|CMDIChildWnd|200|0:0:0|267
UDT|class|CView|68|0:0:0|268
UDT|struct|CPrintInfo|60|0:0:0|269
UDT|class|COleDataObject|16|0:0:0|270
UDT|class|CPreviewView|284|0:0:0|271
UDT|class|CSplitterWnd|200|0:0:0|272
UDT|class|CScrollView|112|0:0:0|273
UDT|class|CScrollView|112|0:0:0|274
UDT|class|CDocument|84|0:0:0|275
UDT|class|CDocTemplate|104|0:0:0|276
UDT|class|CWinApp|196|0:0:0|277
UDT|class|CDocManager|32|0:0:0|278
UDT|struct|HKEY__|4|0:0:0|279
UDT|struct|tagPDA|66|0:0:0|280
UDT|class|CCommandLineInfo|36|0:0:0|281
UDT|class|CRecentFileList|32|0:0:0|282
UDT|class|CPrintDialog|168|0:0:0|283
UDT|class|CWaitCursor|1|0:0:0|284
UDT|class|CCommonDialog|96|0:0:0|285
UDT|class|CCommonDialog|96|0:0:0|286
UDT|class|CFileDialog|508|0:0:0|287
UDT|class|CFileDialog|508|0:0:0|288
UDT|struct|tagOFNA|76|0:0:0|289
UDT|class|CFontDialog|280|0:0:0|290
UDT|class|CFontDialog|280|0:0:0|291
UDT|struct|tagCHOOSEFONTA|60|0:0:0|292
UDT|struct|_charformat|60|0:0:0|293
UDT|struct|_charformat|60|0:0:0|294
UDT|class|CColorDialog|132|0:0:0|295
UDT|class|CColorDialog|132|0:0:0|296
UDT|struct|tagCHOOSECOLORA|36|0:0:0|297
UDT|class|CPrintDialog|168|0:0:0|298
UDT|class|CFindReplaceDialog|392|0:0:0|299
UDT|class|CFindReplaceDialog|392|0:0:0|300
UDT|struct|tagFINDREPLACEA|40|0:0:0|301
UDT|class|CPropertySheet|140|0:0:0|302
UDT|class|CPropertySheet|140|0:0:0|303
UDT|struct|_AFX_OLDPROPSHEETHEADER|40|0:0:0|304
UDT|class|CPropertyPage|144|0:0:0|305
UDT|class|CTabCtrl|64|0:0:0|306
UDT|class|CPropertySheetEx|192|0:0:0|307
UDT|class|CPropertySheetEx|192|0:0:0|308
UDT|struct|_PROPSHEETHEADERA|52|0:0:0|309
UDT|class|CPropertyPageEx|152|0:0:0|310
UDT|class|CPageSetupDialog|180|0:0:0|311
UDT|class|CPageSetupDialog|180|0:0:0|312
UDT|struct|tagPSDA|84|0:0:0|313
UDT|class|CMetaFileDC|16|0:0:0|314
UDT|class|CMetaFileDC|16|0:0:0|315
UDT|class|CSplitterWnd|200|0:0:0|316
UDT|struct|CSplitterWnd::CRowColInfo|12|0:0:0|317
UDT|class|CControlBar|124|0:0:0|318
UDT|struct|AFX_SIZEPARENTPARAMS|32|0:0:0|319
UDT|class|CDockContext|176|0:0:0|320
UDT|class|CControlBarInfo|92|0:0:0|321
UDT|class|CToolBar|160|0:0:0|322
UDT|class|CToolBar|160|0:0:0|323
UDT|class|CToolBarCtrl|64|0:0:0|324
UDT|struct|HRSRC__|4|0:0:0|325
UDT|struct|_TBBUTTON|20|0:0:0|326
UDT|class|CDialogBar|140|0:0:0|327
UDT|class|CDialogBar|140|0:0:0|328
UDT|class|CStatusBar|128|0:0:0|329
UDT|class|CStatusBar|128|0:0:0|330
UDT|class|CStatusBarCtrl|64|0:0:0|331
UDT|struct|AFX_STATUSPANE|20|0:0:0|332
UDT|class|CReBar|124|0:0:0|333
UDT|class|CReBar|124|0:0:0|334
UDT|class|CReBarCtrl|64|0:0:0|335
UDT|struct|tagREBARBANDINFOA|80|0:0:0|336
UDT|class|CRectTracker|72|0:0:0|337
UDT|class|CRectTracker|72|0:0:0|338
UDT|class|CBitmapButton|96|0:0:0|339
UDT|class|CBitmapButton|96|0:0:0|340
UDT|struct|CPrintInfo|60|0:0:0|341
UDT|class|CEditView|116|0:0:0|342
UDT|class|CEditView|116|0:0:0|343
UDT|class|CCtrlView|76|0:0:0|344
UDT|struct|tagPROPVARIANT|16|0:0:0|345
UDT|union|_LARGE_INTEGER|8|0:0:0|346
UDT|union|_ULARGE_INTEGER|8|0:0:0|347
(...)
Title: Re: MSDia SDk 120
Post by: guga on July 22, 2014, 01:00:43 PM
A small testing app

It is not accurated. SOme info are wrong. Fixing it. Also, it may crash. For now, this is not for general usage, since it is a test only.