zoukankan      html  css  js  c++  java
  • 如何判断一个.NET程序是使用VB.NET语言写的

    使用ILDASM.EXE工具!

    写了两个小程序进行测试,一个使用C#语言,另外一个使用VB.NET语言。

    d:\Mesh\study\VBAppDetect>dir /b

    CSharpApp.exe

    VBApp.exe

    d:\Mesh\study\VBAppDetect>ildasm /tok /byt CSharpApp.exe /out=CSharpApp_manifest

    .txt

     

    d:\Mesh\study\VBAppDetect>type CSharpApp_manifest.txt | find /i "Microsoft.Visua

    lBasic"

    啥都没有,呵呵

    d:\Mesh\study\VBAppDetect>ildasm /tok /byt VBApp.exe /out=VBApp_manifest.txt

     

    d:\Mesh\study\VBAppDetect>type VBApp_manifest.txt | find /i "Microsoft.VisualBas

    ic"

    一大堆引用Microsoft.VisualBasic的方法、属性等,说明使用了VB.NET里面的东西了。

     

    .assembly extern /*23000002*/ Microsoft.VisualBasic

           extends [Microsoft.VisualBasic/*23000002*/]Microsoft.VisualBasic.Applicat

    ionServices.WindowsFormsApplicationBase/*01000001*/

          IL_0002:  /* 28   | (0A)000002       */ call       bool [Microsoft.VisualB

    asic/*23000002*/]Microsoft.VisualBasic.ApplicationServices.WindowsFormsApplicati

    onBase/*01000001*/::get_UseCompatibleTextRendering() /* 0A000002 */

        IL_0018:  /* 6F   | (0A)000004       */ callvirt   instance void [Microsoft.

    VisualBasic/*23000002*/]Microsoft.VisualBasic.ApplicationServices.WindowsFormsAp

    plicationBase/*01000001*/::Run(string[]) /* 0A000004 */

        IL_0003:  /* 28   | (0A)000005       */ call       instance void [Microsoft.

    VisualBasic/*23000002*/]Microsoft.VisualBasic.ApplicationServices.WindowsFormsAp

    plicationBase/*01000001*/::.ctor(valuetype [Microsoft.VisualBasic/*23000002*/]Mi

    crosoft.VisualBasic.ApplicationServices.AuthenticationMode/*01000016*/) /* 0A000

    005 */

        IL_0036:  /* 6F   | (0A)00000A       */ callvirt   instance void [Microsoft.

    VisualBasic/*23000002*/]Microsoft.VisualBasic.ApplicationServices.WindowsFormsAp

    plicationBase/*01000001*/::set_IsSingleInstance(bool) /* 0A00000A */

    .

    .

    .

    d:\Mesh\study\VBAppDetect>

  • 相关阅读:
    FunctionGraph无缝集成Express应用
    三分钟迁移Spring boot工程到Serverless
    分布式数据库中间件使用经验分享
    基于OAS设计可扩展OpenAPI
    从一次小哥哥与小姐姐的转账开始, 浅谈分布式事务从理论到实践
    分布式数据库DDM Sidecar模式负载均衡
    Redis缓存数据库安全加固指导(二)
    数据存储课后作业
    GrideVlew提供点击按钮添加新数据,单击项目修改,长按删除功能
    AutoCompleteTextView,Spinner,消息提示
  • 原文地址:https://www.cnblogs.com/holly/p/1658842.html
Copyright © 2011-2022 走看看