Была проблема, задокументированная в посте . Attunity Oracle Conenctor не работает после обновления , в котором выявлена проблема совместимости между версией 5.0 соединителя Oracle и последней версией SSDT (15.9.x по состоянию на 01.02.2009). Пока проблема совместимости не будет решена, де-факто решение заключается в развертывании SSDT версии 15.8.0. Это установит 14.0.3002.113 конструктор служб Microsoft SQL Server Integration Services.
Вот шаги, которые я выполнил для решения:
Приветствия, Адам
Я думаю, что у Вас уже есть самые важные биты.
Существует много вещей, которые делают инженерный анализ il довольно легким.
информация о Типе. Это крупно. В x86 ассемблере необходимо вывести типы переменных на основе того, как они используются.
структура. Информация о структуре приложения более доступна в il дизассемблировании. Это, объединенное с информацией о типе, дает Вам удивительный объем данных. Вы работаете на довольно высоком уровне в этой точке (относительно x86 ассемблера). В собственном ассемблере необходимо вывести структурные макеты (и даже то, что они - структуры) на основе того, как данные используются. Не невозможный, но намного более трудоемкий.
имена. Знание названий вещей может быть полезным.
Эти вещи, объединенные, означают, что у Вас есть довольно много данных об исполняемом файле. Il является в основном рабочим на уровне намного ближе к источнику, чем компилятор собственного кода был бы. Более высокий уровень работы байт-кода над, более легкий инженерный анализ, вообще говоря.
C# и IL почти отображаются непосредственный. (Это меньше с некоторыми более новыми функциями C# 3.0.) Близость отображения (и отсутствие оптимизатора в компиляторе C#) делает вещи таким образом 'обратимыми'.
Расширение корректного ответа Brian
, Если Вы думаете весь IL, легко decompilable, я предлагаю писать нетривиальную программу F# и пытаться декомпилировать тот код. F# делает много преобразований кода и следовательно имеет очень плохое отображение от фактического испускаемого IL и исходной кодовой базы. По моему скромному мнению, значительно более трудно посмотреть на декомпилируемый F#, кодируют и возвращают исходную программу, чем это для C# или VB.Net.