Visual Basic .NET скомпилирован или интерпретирован? - PullRequest
9 голосов
/ 14 мая 2011

Visual Basic 2010 - это скомпилированный или интерпретированный язык?Можно ли разобрать программу vb?

Ответы [ 5 ]

15 голосов
/ 14 мая 2011

Он компилируется в код IL , который обычно JITted . Можно создавать собственные изображения с помощью инструмента, подобного Ngen .

очень просто разбирать сборки .NET. Для этого существует множество инструментов (бесплатных и коммерческих).

2 голосов
/ 14 мая 2011

Зависит от среды исполнения. Но это, как правило, компилируется. Дважды, сначала из исходного кода в IL (Intermediate Language). Опять во время выполнения от IL к машинному коду компилятором точно в срок. За исключением, скажем, .NET Micro Framework, который использует интерпретатор IL. Промежуточная форма позволяет довольно приличную декомпиляцию, Reflector - лучший инструмент для этого.

2 голосов
/ 14 мая 2011

Это как то и другое.Он компилируется в IL, который затем «как раз вовремя компилируется» (JITed) в машинный код во время выполнения.

0 голосов
/ 14 мая 2011

Это сложно.

Как и Java, языки .Net (включая C # и VB) компилируются до языка, подобного байт-коду, называемого IL (Intermediate Language). Этот IL - то, что затем распространяется на другие компьютеры.

Однако на этом все не заканчивается. IL, в свою очередь, компилируется в нативный код компилятором JIT (как раз вовремя) до того, как он будет фактически выполнен. И да, vb, как и все языки, можно разобрать.

0 голосов
/ 14 мая 2011

Это смесь обоих.Он скомпилирован в CIL (Common Intermediate Language: http://en.wikipedia.org/wiki/Common_Intermediate_Language).. Этот CIL - JIT (Just in Time), скомпилированный в нативный код CLR (Common Language Runtime).

Поскольку код CIL остается втактично, довольно просто декомпилировать CIL в C #, VB .NET или другой вариант .NET. Для этого существует несколько продуктов (Reflector, dotPeek). Чтобы предотвратить кражу исходного кода, вы можете использовать обфускатор (например,Dotfuscator), чтобы убедиться, что любые попытки декомпилировать CIL в C # / VB .NET приводят к бреду.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...