Is it possible to determine in which language the .NET assembly was written?

Is there a way to determine the .NET assembly source language if the source code is not available?

+3
source share
3 answers

Not really, but sometimes it can be assumed.

For example, if you have a VB.NET assembly containing anonymous types, the name generated by the compiler in the assembly will look something like this:

VB$AnonymousType_T<T0, T1>

Anonymous types in the C # assembly look like this:

<>f__AnonymousType0<....>

Different compilers will implement such things a little differently. The C ++ / CLI assembly tends to have many types in the assembly with "funny" names (for things like functions that relate to global scope, etc.).

Visual Basic Microsoft.VisualBase( .NET , 100%).

+8

, , . , Microsoft.CSharp Microsoft.VisualBasic, .

+2

Not so, because they are all roughly compiled for the same IL.

+1
source

Source: https://habr.com/ru/post/1758121/


All Articles