关于c#:我想通过代码创建一个.cs文件的dll


I want to create a dll of .cs file by code

我想用代码创建一个.cs文件的dll,用C语言编程,有人能帮我解决这个问题吗?意味着我有两个类"class1"和"class2",我想通过编程为class1创建dll,这样我就可以请帮我做这件事。

编辑:

1
2
3
4
5
6
ProcessStartInfo info = new ProcessStartInfo(@"C:\Windows\Microsoft.NET\Framework\v4.0.30319\csc.exe");

info.Arguments = @" /out:E:\pratik\file option\Class1.dll Class1.cs";
info.UseShellExecute = true;
Process.Start(info);
Console.ReadLine();

我已使用此代码创建它正在运行的dll,但我没有在给定路径上获取dll


您可以使用编译器作为服务-codedomcompiler功能来动态创建dll/exe。

如何使用C编译器以编程方式编译代码

编译wiht codedom-关于codeproject的文章

另一种方法是编译文件csc.exe命令行工具来创建库。为此,您需要使用适当的参数启动新进程。

1
2
3
4
5
6
 Process.Start( Path.Combine(GetCscFolderLocation() ,"csc"), "/target:library File1.cs File2.cs /reference: <reference 1> <reference2> ..."

 string GetCscFolderLocation()
 {
 // Getting CSC location
 }

获取csc.exe文件夹位置很困难。跟着这个来想个主意。

下面的示例在默认编辑器中启动文本文件。

1
Process.Start(@"C:\Windows\Microsoft.NET\Framework\v4.0.30319\csc.e??xe", @"/target:library /out:C:\test\test.dll c:\test\File.cs");


转到Visual Studio中的新项目

根据需要选择类库名称

现在,把方法、属性放到类中,你需要什么

建造它。

将此引用添加到项目中。