zoukankan      html  css  js  c++  java
  • 把DLL文件打包进EXE的技巧(C#)

     

    废话就不多说了,直接进入主题吧

    用VS2005建立一个windows项目,取名test

    引用dll文件

    编写代码,正常引用dll里的类库,

    同时在test项目添加资源文件(该文件就是刚才引用的dll文件)

    VS2005会自动生成引用代码,我这里引用的是IrisSkin2.dll

    internal static byte[] IrisSkin2 {
                
    get {
                    
    object obj = ResourceManager.GetObject("IrisSkin2", resourceCulture);
                    
    return ((byte[])(obj));
                }

            }

    然后在Main(program.cs)函数里加入代码

    static void Main()
            
    {
                Application.EnableVisualStyles();
                Application.SetCompatibleTextRenderingDefault(
    false);

                
    string path = Application.StartupPath + "\";
                
    string dllFileName = "IrisSkin2.dll";
                
    //******加载IrisSkin2.dll******
                if (!File.Exists(path + dllFileName))   //文件不存在
                {
                    FileStream fs 
    = new FileStream(path + dllFileName, FileMode.CreateNew, FileAccess.Write);
                    
    byte[] buffer = GetData.Properties.Resources.IrisSkin2;//{GetData是命名空间}
                    fs.Write(buffer, 
    0, buffer.Length);
                    fs.Close();
                }

                
    //*****************************
                
                Application.Run(
    new GDForm());
            }

    编译test项目,生成exe文件,

    然后删除引用的dll文件(注意是先编译,再删除)

    复制该exe文件就可以在别的地方运行了(不用dll,运行EXE会自动生成DLL文件)

  • 相关阅读:
    awk命令
    计算机基础
    python基础-条件判断
    jmeter分布式负载
    jmeter之JSON Path Extractor取值关联
    3.regsvr32 使用说明
    2.NPS代理
    1.正向代理和反向代理
    Calendar 获取指定日期所在月份的第一天、最后一天、下个月第一天等
    mysql 数据库 小知识
  • 原文地址:https://www.cnblogs.com/zengxlf/p/1458996.html
Copyright © 2011-2022 走看看