StoreИнструменты — это техника добавления собственного кода в программу/окружение для мониторинга или изменения некоторого поведения исследуемой программы. Сборки Windows Phone приложений содержат промежуточный CIL — код, который выполняется CLR. Именно этот код модифицируется для того, чтобы внести в него дополнительную функциональность. Например, у нас есть метод, который складывает два числа и возвращает результат. Ниже версия этого же метода, проинспектированная таким образом, что результат метода выводится в консоль.

КОМПИЛЯЦИЯ В ОБЛАКЕ И MDIL

Windows Phone 8 Microsoft ввела компиляцию в облаке. Теперь, когда ты отправляешь свое приложение в Store, оно содержит CIL сборки. На своей стороне (в облаке) Microsoft компилирует их в новый формат —MDIL (Machine Dependent Intermediate Language) сборки. Так что, когда ты скачиваешь приложение на устройство, оно содержит MDIL — сборки. В процессе установки эти сборки линкуются и выполняется нативный код. Все это сделано в первую очередь для повышения производительности работы приложений.

MDIL является запатентованным и документированным представлением. На сегодняшний день существует только один инструмент для чтения MDIL —MDIL Dump.