zoukankan      html  css  js  c++  java
  • Visual C#生成DLL文件

    C#-----如何用Visual C#生成DLL文件,然后使用reflector将dll还原

    Visual C#生成DLL文件——预备知识 

    DLL(Dynamic Link Library)文件即动态链接库文件,是一种可执行文件,允许程序共享执行特殊任务所必需的代码和其他资源。多数情况下带有dll扩展名(也可以是.ocx文件:ActiveX控件文件,.cpl文件:控制面板文件,.drv文件:设备驱动程序文件等),向运行于Windows操作系统下的程序提供代码、数据或函数。

    使用DLL的一些好处:

    使用较少的资源;

    推广模块式体系结构;

    简化部署和安装。      

    DLL不是独立运行的程序,是某个程序的一个部分,只能由所属的程序调用,用户不能也不需要打开它。 

    Visual C#生成DLL文件   

    VisualC、Delphi或者VB等编程语言来编写的DLL文件,在编译完成以后,产生DLL文件已经是一个可以直接供计算机使用的二进制文件。但用Visual C#编译器生成的受管代码虽然也是二进制文件,但不是可以直接供计算机使用的原始代码,实质上是一种中间语言(IL)代码,需要经过"下一代窗口服务"( Next

    Generation Windows Services,简写为NGWS ) runtime的即时编译器(即JIT)进行编译。

    用Visual C#生成的DLL文件已经和以前的DLL文件有了本质上的区别。用Visual C#生成的DLL文件在程序设计中更多的表现为一种类(Class)或者类库(Class Library)。 

    Visual C#生成DLL文件——制作一个组件

    1.首先创建一个新类库工程文件

    File->New->Project->Visual C# Projects->Class Library。填入工程文件名称,并且选择文件要存放的目录。

    2.工程文件

    将Class1.cs改名自己要创建的文件名:myDll.cs,并填入代码。

    3.生成DLL文件

    编译工程文件:csc /target:library /out:myDll.DLL myDll.cs生成组件myDll.dll,该组件会在工程文件的bin\debug目录里,文件扩展名是dll。

    Visual C#生成DLL文件——测试DLL

    1.新建一个控制应用程序

    File->New->Project->Visual C# Projects->Console Application。通过这个控制应用程序来测试我们的组件。

    2. 为Namespace添加引用

    Project->Add reference,浏览到刚才生成的DLL,然后按OK。即将引用加到当前的工程文件的类里。

    3.调用myDll命名空间,创建myDll对象,并且调用它的方法和属性

    (1)使用namespace:using myDll;

    (2)创建myDll对象;

    (3)调用方法和属性。

    到相关页面下载Reflector.zip和Reflector.FileDisassembler.zip(插件)

    1双击Reflector.exe完成安装

    2打开reflector,在view 菜单下的add-ins 中找到插件的dll,即Reflector.FileDisassembler.dll

    3File->open 打开你要还原的dll文件的位置,选中该dll ,点击菜单栏中Tool->File disassemble ,如想换还原后的文件的位置可在右边的地址框中直接输入,一切默认的话,就点generate

    第二次操作可点击View->Refresh然后重复刚才的操作

  • 相关阅读:
    困扰几周了,请教啊,android与websevice数据交互很诡异的问题
    最新版本_adt-bundle-windows-x86_64-20140702 无法建立avd
    android向web提交数据,中文乱码
    activity怎么控制fragment中的textview组件
    关于云储存或者百度云的基础问题, 用java/android 实现上传文件到云储存(比如百度云)
    短信列表如何让同一个号码的短信只显示一条,刚刚加载短信列表会加载所有的数据列。求指教
    Android图片上传到服务器的问题
    安卓模拟器这么慢,大家都怎么调试的?
    浏览器前缀-----[译]Autoprefixer:一个以最好的方式处理浏览器前缀的后处理程序
    windows 下安装nodejs及其配置环境
  • 原文地址:https://www.cnblogs.com/forever2698/p/2864091.html
Copyright © 2011-2022 走看看