反编译的DLL – 帮助判断它是C#还是VB.NET的线索?
发布时间:2020-12-14 02:13:09 所属栏目:Windows 来源:网络整理
导读:当使用像DotPeek这样的东西来反编译DLL时,如何判断它最初是用VB.Net还是C#编码的? 我认为没有简单的方法可以告诉你,但是在某些反编译代码中可能会有告诉标记(即线索)? 解决方法 您可以查找对Microsoft.VisualBasic库的引用.如果存在,则代码很可能是使用VB
当使用像DotPeek这样的东西来反编译DLL时,如何判断它最初是用VB.Net还是C#编码的?
我认为没有简单的方法可以告诉你,但是在某些反编译代码中可能会有告诉标记(即线索)? 解决方法
您可以查找对Microsoft.VisualBasic库的引用.如果存在,则代码很可能是使用VB生成的.该库有时也包含在C#项目中,但这并不常见.如果参考不存在,那肯定不是VB.
(嗯,使用命令行编译器和特殊的编译器开关可以在没有库的情况下编译VB,但这种情况非常罕见.) 您还可以检查VisualBasic库的使用频率.在常规的VB程序中,它会经常使用,但在C#程序中,它通常只用于某些特定的任务,而这些任务在其他库中是不可用的,比如DateDiff调用. 任何VB特定的命令,如CInt或Mid将显示为对VisualBasic库的调用,甚至在字符串上使用时,=运算符将使用该库.此代码(其中a和b是字符串): If a = b Then 实际上会进行库调用以进行比较,并在反编译为C#时显示如下: if (Operators.CompareString(a,b,false) == 0) { (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- windows-server-2008-r2 – Win 2008 R2 – 复制到磁盘非常
- windows – 捕获外部程序的STDOUT和STDERR *同时*它正在执行
- windows – 控制台FTPS(不是SFTP)客户端?
- windows-server-2003 – 设置多个电子邮件别名
- windows-7 – Windows 7,开发人员的良好平台?
- windows-10 – 有没有办法使用GUI管理Windows 10上的QLogic
- windows-phone-7 – 如何在Windows Phone 7中创建确认对话框
- windows – mmap的可移植性如何?
- Window RabbitMq安装
- 在Windows中直接发送ATA命令到设备?
推荐文章
站长推荐
热点阅读