标签: csc

C#项目的编译器命令行

Visual Studio在项目属性 - > C/C++ - >命令行和链接器 - >命令行下显示编译器和链接C++项目的确切命令行,但是,我无法找到C#项目的类似属性页.

有没有人知道找出用于编译C#项目的csc.exe命令行参数的最佳方法是什么

.net c# csc

3
推荐指数
1
解决办法
6856
查看次数

csc.exe 退出,代码为 -2146232797 vs 2017

我的项目在构建时出现错误 csc.exe 以代码 -2146232797 Visual Studio 2017(Professional) 在其他团队的计算机项目构建和运行良好退出,所以我不想更新 nuget 编译器,那里有任何永久解决方案吗?

.net c# csc visual-studio roslyn

3
推荐指数
1
解决办法
5328
查看次数

使用Visual Studio 2019构建现有的Sln失败

我刚刚升级到VS2019,无法构建现有的解决方案。编译器在解决方案中的某些项目上生成以下错误:

“ Csc”任务不支持“ DisableSdkPath”参数。验证参数是否在任务上存在,并且它是可设置的公共实例属性。

c# msbuild csc visual-studio visual-studio-2019

3
推荐指数
1
解决办法
404
查看次数

为什么编译器对这行代码有问题?

整个解决方案在Visual Studio中构建得很好,但是当我运行Nant脚本来编译网站时,我在这一行上遇到了几个错误:

string[] qs = (Request.QueryString["e"] ?? String.Empty)
               .Split(new[] { '?' }, StringSplitOptions.RemoveEmptyEntries);
Run Code Online (Sandbox Code Playgroud)

首先说明预期类型,然后是语法错误(预期值),); 我曾经在项目中使用过这样的行,但似乎并没有抱怨这些行.

我很确定错误来自于在条件语句上调用Split,但我不确定原因.

c# string csc

2
推荐指数
1
解决办法
221
查看次数

MSBuild引用程序集未包含在构建中

我可以用以下命令构建我的项目......

csc /reference:lib\Newtonsoft.Json.dll SomeSourceFile.cs
Run Code Online (Sandbox Code Playgroud)

...但是当我使用这个命令时......

msbuild MyProject.csproj
Run Code Online (Sandbox Code Playgroud)

...使用以下.csproj文件,我的.dll参考不包括在内.有什么想法吗?

<PropertyGroup>
    <AssemblyName>MyAssemblyName</AssemblyName>
    <OutputPath>bin\</OutputPath>
</PropertyGroup>

<ItemGroup>
    <Compile Include="SomeSourceFile.cs" />
</ItemGroup>

<ItemGroup>
    <Reference Include="Newtonsoft.Json">
        <HintPath>lib\Newtonsoft.Json.dll</HintPath>
    </Reference>
</ItemGroup>

<Target Name="Build">
    <MakeDir Directories="$(OutputPath)" Condition="!Exists('$(OutputPath)')" />
    <Csc Sources="@(Compile)" OutputAssembly="$(OutputPath)$(AssemblyName).exe" />
</Target>
Run Code Online (Sandbox Code Playgroud)

msbuild csc

2
推荐指数
1
解决办法
5794
查看次数

Visual C#2010命令行参数为csc

在Visual C++ 2010中,我可以看到传递给cl.exe的参数:

在此输入图像描述

这是非常有用的,因为有时你会忘记检查这个或那个选项,在这里和那里添加一些目录等,并立即看到所有命令使这很容易发现.

我想知道Visual C#2010是否有类似的东西.我无法在任何地方看到"命令行"选项卡.显然早期版本在Output> Build选项卡中显示"Task:csc"行,但我在Visual C#2010 SP1生成的输出中找不到类似的内容.

是否有可能获得我正在寻找的东西?

NB我知道我可以从MSBuild获取参数,但遗憾的是,由于依赖解析失败,MSBuild无法构建我的一些解决方案.我正在寻找一个纯Visual Studio IDE解决方案.

c# command-line visual-studio-2010 csc

2
推荐指数
1
解决办法
1714
查看次数

msbuild是否附带编译器?

我知道Visual Studio内部使用一个名为msbuild的工具来编译C#代码.msbuild是否在内部使用csc.exe(随.net框架提供)来编译代码?或者Visual Studio是否有自己的编译器?

更新(与原始问题略有不同):Powershell使用.net类型.那么powershell也会针对csc.exe吗?如果是,那是不是意味着PowerShell不是纯脚本?

.net msbuild csc

2
推荐指数
1
解决办法
459
查看次数

添加一个int变量时生成不同的IL

我在c#中有这个程序:

using System;

class Program
{
    public static void Main()
    {
    int i = 4;
    double d = 12.34;
    double PI = Math.PI;
    string name = "Ehsan";


    }
}
Run Code Online (Sandbox Code Playgroud)

当我编译它时,以下是编译器为Main生成的IL:

.method public hidebysig static void  Main() cil managed
{
  .entrypoint
  // Code size       30 (0x1e)
  .maxstack  1
  .locals init (int32 V_0,
           float64 V_1,
           float64 V_2,
           string V_3)
  IL_0000:  nop
  IL_0001:  ldc.i4.4
  IL_0002:  stloc.0
  IL_0003:  ldc.r8     12.34
  IL_000c:  stloc.1
  IL_000d:  ldc.r8     3.1415926535897931
  IL_0016:  stloc.2
  IL_0017:  ldstr      "Ehsan"
  IL_001c:  stloc.3
  IL_001d:  ret …
Run Code Online (Sandbox Code Playgroud)

c# il csc ildasm

2
推荐指数
2
解决办法
707
查看次数

在VS2015中构建项目:“ csc.exe”退出,代码为-1073741571

我使用的是Visual Studio2013。昨天,我安装了VS2015(企业更新3)。我的解决方案的构建过程在其中一个项目的VS2015中崩溃。VS2017 RC发生相同的异常。该解决方案已在VS2013中成功构建。

该解决方案的目标是.Net4.5。当我迁移到.Net4.6.2时,它不能解决此问题。

我相信问题在于VS2015 +中包含的编译器

输出:

进程由于StackOverflowException而终止。

C:\ Program Files(x86)\ MSBuild \ 14.0 \ bin \ Microsoft.CSharp.Core.targets(67,5):错误MSB6006:“ csc.exe”退出,代码为-1073741571。

Msbuild命令:

C:\Program Files (x86)\MSBuild\14.0\bin\csc.exe \
  /noconfig \
  /nowarn:1591,1701,1702,2008 \
  /nostdlib+ \
  /errorreport:prompt \
  /warn:4 \
  /define:TRACE;DEBUG;DOMAIN_IMPL \
  /errorendlocation \
  /preferreduilang:en-US \
  /highentropyva+ \
  /reference:[...] \
  /reference:"C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.6.2\System.ComponentModel.Composition.dll" \
  /reference:"C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.6.2\System.ComponentModel.DataAnnotations.dll" \
  /reference:"C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.6.2\System.Configuration.dll" \
  /reference:"C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.6.2\System.Core.dll" \
  /reference:"C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.6.2\System.Data.dll" \
  /reference:"C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.6.2\System.dll" \
  /reference:"C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.6.2\System.Net.Http.dll"  \
  /reference:"C:\Program …
Run Code Online (Sandbox Code Playgroud)

stack-overflow msbuild csc visual-studio-2015

2
推荐指数
1
解决办法
1854
查看次数

在macOS上编译/运行单个C#文件

我可以通过VS for Mac开发基于.NET Core的C#应用​​程序,现在我已经创建了一个“编译器”,可以为我创建的语言生成C#。我至少要运行输出(一个名为Program.cs的文件)​​,并希望将其编译为macOS上的可执行文件。

在Windows上,可以使用以下方法完成此操作:

csc /optimize /t:exe /out:Program.exe Program.cs
Run Code Online (Sandbox Code Playgroud)

奇怪的是,这个确切的命令在macOS上也同样起作用,并生成Windows可执行文件。我想要的是Mac可执行文件的等效功能。但是,csc文档指出,唯一的编译器目标是“库”,“模块”和Windows应用程序。

为了澄清起见,我不想在运行时运行代码,而是从运行时生成的代码(作为字符串)构建可执行文件。

c# macos csc .net-core

2
推荐指数
1
解决办法
106
查看次数