• .NET中的编译、程序调用


    • .NET中的各种语言写的代码编译出来exe、dll等文件其实都是中间语言代码,双击时会调用.net framework来执行
      • c、c++编译出来的exe应该已经是机器码了,双击运行时是操作系统直接执行
      • Python用工具打包出来的exe就不知道了,外层是机器码由系统直接执行,然后再调用Python来解释执行?
    • c#可以直接引入dll、exe作为依赖
      • 如果是.net编写的,那么可以直接调用其中的类、函数等
        • 被依赖的是debug版本才能调试进去
      • 如果是c++等编写的,那么只能用特定的语法(如DLLImport)调用c++中指明了要export的函数?
    • 如何调用正在运行的另一个exe或进程中的函数并获取数据?
    • 编译
      • MSBuild

        MSBuild.exe [Switches] [ProjectFile]
        
        "C:Program Files (x86)Microsoft Visual Studio2017ProfessionalMSBuild15.0Binmsbuild.exe" -t:build -restore /consoleloggerparameters:ErrorsOnly /maxcpucount /nologo /property:Configuration=Release /verbosity:quiet "CFChecker.sln"
        
        • 位置与下载
          • 每个.net framework版本下都有一个,路径一般是C:WindowsMicrosoft.NETFrameworkv4.0.30319MSBuild.exe,但是可能版本比较旧
          • vs目录下也有
          • 单独下载。新版的MSBuild属于(Build Tools for Visual Studio 2019)[https://visualstudio.microsoft.com/downloads/]。因此要用vs installers来单独下载Build Tools for Visual Studio 2019来获取MSBuild。
      • Devenv

        • Visual studio提供的,需要安装vs
        • 比较省事,安装vs时会把.net framework、nuget等装上,但比较大,而且可能不适用于.net core在Linux上编译?
        • 路径一般是C:Program Files (x86)Microsoft Visual Studio2017ProfessionalCommon7IDEdevenv.exe
  • 相关阅读:
    java第十三周作业
    java第十三周随堂
    安卓作业
    5.29 第十三周作业
    5.28第十三周上机练习
    5.22第十二周作业
    5.21第十二章上机练习
    5.15 第十一周作业
    5.14 第十一周 上机练习
    5.7第十周上机练习
  • 原文地址:https://www.cnblogs.com/wyp1988/p/12743494.html
Copyright © 2020-2023  润新知