我无法在没有 main 方法的情况下使用命令行构建 dll 文件

I am unable to build a dll file using the command line without main method

我的目标是从命令行构建一个 dll,因为我没有安装 visual studio。

到目前为止,我已经创建了一个名为 AuthenticatedProxy.cs 的 class 文件并转到命令行 运行 以下命令:

C:\Windows\Microsoft.NET\Framework\v3.5\csc.exe C:\AuthenticatedProxy.cs

输出错误说:'AuthenticatedProxy.exe' does not contain a static 'Main' method suitable for an entry point.(注意我的class文件没有main方法)

如何将 class 文件编译成 dll?我有正确的命令吗?

要告诉编译器构建 DLL 而不是 EXE,请传递 -target:library

Documentation

使用命令行对每个开发人员来说都是一种很好的做法。

您可以使用 -target 标志:

C:\Windows\Microsoft.NET\Framework\v3.5\csc.exe -target:library C:\AuthenticatedProxy.cs

每个 PE(可移植可执行文件)都必须有入口点来初始化 exe。

对于 net 平台,请将以下代码放在您的主 class

[STAThread]
        private static void Main()
        {
            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);
            Application.Run(new Form1());
        }

然后使用

>csc.exe /t:exe AuthenticatedProxy.cs or 
>csc.exe /t:winexe AuthenticatedProxy.cs

如果没有启动器,库不需要入口点,只能在下面使用 命令

> csc.exe /t:library AuthenticatedProxy.cs

构建模块

>csc.exe /t:module AuthenticatedProxy.cs