能否将C#dll反编译为VB.NET

问题描述 投票:1回答:5

我已经在C#.net中开发了一个dll。我们可以在VB.net中反编译吗?如果是,该怎么办?

c# vb.net decompiling
5个回答
5
投票

使用类似Reflector的工具将已编译的C#程序集(IL)转换为反编译的VB.NET源代码(可能会失去某些变量名的含义)。另一篇文章提到了Reflector的一些免费替代方法。

或使用在线资源(例如this one(虽然一次仅一个代码文件)转换C#代码。


3
投票

我同意Mitch,但可以免费使用Reflector:


2
投票

假设您有来源,则可以使用sharpdevelop在c#.net和vb.net之间来回转换整个解决方案


1
投票

有时无法将C#转换(或反编译)为VB.Net,因为有些C#元素在VB中没有等效项。例如。迭代器(yield)和不安全的代码。此外,即使有直接等效项,一些自由转换器fail badly也是如此。

为什么仍要这样做?仅使用VB.Net代码中的C#DLL可能很容易:您可以调用它,也可以从中继承它。 “ CLS compliance”将对此有所帮助。

对于它的价值,也确实存在某些VB元素在C#中不具有等效性,例如异常过滤器。


0
投票

如果您自行开发,我想您可以访问源吗?如果是这样,您可以在这里将其全部转换:

http://www.developerfusion.com/tools/convert/csharp-to-vb/

© www.soinside.com 2019 - 2024. All rights reserved.