Author Topic: MSDia SDk 120  (Read 2874 times)

guga

  • Moderator
  • Member
  • *****
  • Posts: 1196
  • Assembly is a state of art.
    • RosAsm
MSDia SDk 120
« 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
Coding in Assembly requires a mix of:
80% of brain, passion, intuition, creativity
10% of programming skills
10% of alcoholic levels in your blood.

My Code Sites:
http://rosasm.freeforums.org
http://winasm.tripod.com

guga

  • Moderator
  • Member
  • *****
  • Posts: 1196
  • Assembly is a state of art.
    • RosAsm
Re: MSDia SDk 120
« Reply #1 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. 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

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

Code: [Select]
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
(...)
Coding in Assembly requires a mix of:
80% of brain, passion, intuition, creativity
10% of programming skills
10% of alcoholic levels in your blood.

My Code Sites:
http://rosasm.freeforums.org
http://winasm.tripod.com

guga

  • Moderator
  • Member
  • *****
  • Posts: 1196
  • Assembly is a state of art.
    • RosAsm
Re: MSDia SDk 120
« Reply #2 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.

Coding in Assembly requires a mix of:
80% of brain, passion, intuition, creativity
10% of programming skills
10% of alcoholic levels in your blood.

My Code Sites:
http://rosasm.freeforums.org
http://winasm.tripod.com