首先声明一下,本人很菜,学C#也不是很久。一直在努力。
问题是这样的,我现在写了几个DLL文件。在一个应用程序里面使用。我现在想把这些DLL文件注册到C盘assembly文件夹里面,请问用C#代码怎么实现呀?求源码。我现在采用的是打开assembly文件夹,直接把DLL文件拉进去。想用代码达到跟这一样的效果。

解决方案 »

  1.   


    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Windows.Forms;
    using System.IO;namespace CopyDirectory
    {
        public partial class Form1 : Form
        {
            public Form1()
            {
                InitializeComponent();
            }        private void button1_Click(object sender, EventArgs e)
            {
                CopyDirectory("c:\\downloads","d:\\");
            }        /// <summary>
            /// 拷贝文件夹
            /// </summary>
            /// <param name="srcdir"></param>
            /// <param name="desdir"></param>
            private void CopyDirectory(string srcdir, string desdir)
            {
                string folderName = srcdir.Substring(srcdir.LastIndexOf("\\")+1);
                string desfolderdir = desdir +"\\"+ folderName;
                if (desdir.LastIndexOf("\\") == (desdir.Length - 1))
                {
                    desfolderdir = desdir + folderName;
                }
                string[] filenames = Directory.GetFileSystemEntries(srcdir);
                foreach (string file in filenames)// 遍历所有的文件和目录
                {
                    if (Directory.Exists(file))// 先当作目录处理如果存在这个目录就递归Copy该目录下面的文件
                    {
                        string currentdir = desfolderdir + "\\" + file.Substring(file.LastIndexOf("\\") + 1);
                        if (!Directory.Exists(currentdir))
                        {
                            Directory.CreateDirectory(currentdir);
                        }
                        CopyDirectory(file, desfolderdir);
                    }
                    else // 否则直接copy文件
                    {
                        string srcfileName = file.Substring(file.LastIndexOf("\\")+1);
                        srcfileName = desfolderdir + "\\" + srcfileName;
                        if (!Directory.Exists(desfolderdir))
                        {
                            Directory.CreateDirectory(desfolderdir);
                        }
                        File.Copy(file, srcfileName);
                    }
                }//foreach
            }//function end    }
    }