Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/326.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何创建.csproj文件的DLL_C#_Csc - Fatal编程技术网

C# 如何创建.csproj文件的DLL

C# 如何创建.csproj文件的DLL,c#,csc,C#,Csc,我使用这段代码在VS.Cmd编译器中为整个解决方案生成一个DLL。但是,我收到一个编译错误,并且没有生成DLL。csc不适用于.csproj文件。您有几个选择: 使用msbuild;比如说 csc /target:library /out:MyMaths.dll ClassLibraryFunction.csproj 注意,您可能需要更改项目的输出类型(在IDE中,这是项目属性、应用程序、输出类型;在csproj文件中,这是库) 使用带有/recurse开关的csc;例如: msbuild C

我使用这段代码在VS.Cmd编译器中为整个解决方案生成一个DLL。但是,我收到一个编译错误,并且没有生成DLL。

csc
不适用于
.csproj
文件。您有几个选择:

  • 使用
    msbuild
    ;比如说

    csc /target:library /out:MyMaths.dll ClassLibraryFunction.csproj
    
    注意,您可能需要更改项目的输出类型(在IDE中,这是项目属性、应用程序、输出类型;在csproj文件中,这是

  • 使用带有
    /recurse
    开关的
    csc
    ;例如:

    msbuild ClassLibraryFunction.csproj
    
    (将编译当前文件夹或子文件夹中的所有
    .cs
    文件)

  • 不做任何事情,只使用你已经拥有的exe;NET exe可以像任何其他程序集一样被引用,并且可以使用任何
    public
    类型


  • 那很好。有问题吗?你是告诉我们还是问我们?更多信息将是good@skyfoot我想问的是如何为c语言中的hole应用程序创建dll,我觉得这个问题是真实的,真实的,可以回答的。我正在重新打开-我会马上编辑这个问题以改进它。@HaemEternal猜测:很多语法错误,因为xml(csproj)不是C,而
    csc
    是Ccompiler@pratikgodha项目可以是dll;您只需将项目的输出设置为库。顺便说一句,这个词是“完整的”;不是“洞”-这意味着完全不同的东西。是的,我可以添加lib。但那时我无法访问这些类。当我将为包含类的应用程序1创建dll时,以及当我将创建新的应用程序2并附加库时,我想要的是什么。我将能够访问所有类。@pratikgodha您所说的一切都是库的正常行为。我唯一的问题是:这些类型是公共的吗?顺便问一下:你知道你也可以添加对exe的引用吗?因此,即使您的应用程序当前是exe,您仍然可以从其他项目引用它,并使用这些类型。只要它们是
    公共的
    。是的,我知道我可以添加reference.exe,但当我访问它时,无法调用它的exe包含的类。你明白我想要什么和我想要做什么吗?@pratikgodha请允许我再说一次:应该可以。如果看不到类型,则需要将它们设置为公共类型。
    csc /target:library /out:MyMaths.dll /recurse:*.cs