C# 释放内嵌资源目录到目标文件夹

我在开发中遇到一个问题,我要在程序中打包某些文件进去,在执行指定函数时,就让它释放资源。

            于是我在网上找到这样的方法。
               Assembly asm = Assembly.GetExecutingAssembly(); //读取嵌入式资源
                inStream = new BufferedStream(asm.GetManifestResourceStream("自解压.res.Adjprog.exe"));

                outStream = new FileStream("D:\\test.exe", FileMode.Create, FileAccess.Write);

                byte[] buffer = new byte[1024];
                int length;

                while ((length = inStream.Read(buffer, 0, buffer.Length)) > 0)
                {
                    outStream.Write(buffer, 0, length);
                }
                outStream.Flush();

    但是,这个案例代码有一个问题,如果打包进来的资源文件有好多个,就意味着我要再写一个文件清单,让程序按照清单来一个一次调用这个代码函数来释放文件。
    这样工作量就有点大……

    有没有什么办法可以让它直接把整个目录释放出来,而不是一个文件执行一次这样的代码释放文件?

使用反射
using System.Reflection;

for (int i = 0; i < Assembly.GetExecutingAssembly().GetManifestResourceNames().Length; i++)
string name=Assembly.GetExecutingAssembly().GetManifestResourceNames()[i];

用dir >filelist.txt命令,将需要打包的文件列表输出下。
然后你先释放filelist.txt,用File.ReadAllLines读取它,再根据它释放别的文件。
你可以把dir作为post build脚本,在编译的时候自动生成下,然后编译的时候自动嵌入进你的程序。