System.Compiler.IMetadataHelper /correct 21.03.2011/

System.Compiler.IMetadataHelper /correct 21.03.2011/

post id: 78

post length: 2610

post datetime: 3/12/2011 8:30:09 PM

post ip: 10.10.10.254

System.Compiler.IMetadataHelper

/correct`ed 21.03.2011/

Required: Fix Framework 2,3

Open(FILENAME /or Nothing for dialog/) - Initialize assembly

Save() - Save change

Fixed OpenByName + Save /24-03-2011/

IoCtl() - Main Collector macros [All In One]

Imports System.Compiler.IMetadataHelper

Public Const IOCTL_METHOD_RESIZE_BY_ID_UPAD As UInt32 = 6012UI

Public Const IOCTL_METHOD_RESIZE_BY_ID_DPAD As UInt32 = 6011UI

Value1 - Method ID

Value2 - new method size

Public Const IOCTL_STREAMS_SORTED As UInt32 = 6001UI

Value - sorted mask [Int32]

12345 - #~, #String, #US, #GUID, #Blob

54321 - #Blob, #GUID, #US, #String, #~

Public Const IOCTL_STREAMS_ADD_UPAD As UInt32 = 6008UI

Public Const IOCTL_STREAMS_ADD_DPAD As UInt32 = 6009UI

Value - STREAM_NAME [String]

IOCTL_STREAMS_ADD_UPAD

IOCTL_STREAMS_ADD_DPAD

_____________

Required:

[!] Framework 2.0 Fix /or above/ for streams

decomposite work!

---------------------------------

Очевидно, уже на стадии последнего fix`а для Framework 2.0 загрузчику была дана отмашка

отрабатывать с потоками > 5. До этого подобная ситуация считалась -- BOGUS! --,

что и осталось в Ildasm`е как раритет.

IOCTL_SECTION_PHYS_CHANGE = 2001UI

IOCTL_SECTION_VIRT_CHANGE = 2002UI

Value1 - Section ID

Value2 - Increment

BinaryAssembly.Open()

BinaryAssembly.IoCtl(Value, IOCTL_CODE)

or

BinaryAssembly.IoCtl(Value1, Value2, IOCTL_CODE)

BinaryAssembly.Save()

Example:

BinaryAssembly.IoCtl(54321, 6001UI)