标签: al.exe

MS生成任务找不到AL.EXE

问题如下:

C:\ Windows \ Microsoft.NET \ Framework \ v4.0.30319 \ Microsoft.Common.targets(2863,5):错误MSB3086:使用SdkToolsPath“”或注册表项“ HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Microsoft SDKs \ Windows \ v8.0A \ WinSDK-NetFx40Tools-x86“。确保已设置SdkToolsPath,并且该工具位于SdkToolsPath下正确的处理器特定位置,并且已安装Microsoft Windows SDK

我尝试了在网络上找到的各种费力的解决方案,但最终我设法解决了以下问题:

  1. C:\Windows\Microsoft.NET\Framework\v4.0.30319\
  2. 用文本编辑器打开文件 Microsoft.Common.targets
  3. "al.exe"在第2步中搜索文件,然后将"ToolPath""ToolExe"字段替换为"al.exe"文件的实际路径。

我已经按照以下方式在步骤3中设置了两个字段:

ToolPath =“ C:\ Program Files(x86)\ Microsoft SDKs \ Windows \ v8.0A \ bin \ NETFX 4.0 Tools \” ToolExe =“ C:\ Program Files(x86)\ Microsoft SDKs \ Windows \ v8.0A \ bin \ NETFX 4.0工具\ al.exe”

谢谢。

msbuild al.exe

6
推荐指数
1
解决办法
3843
查看次数

链接.Net程序集

这都是假设,所以请耐心等待.

假设我正在用C#编写一个名为Foo的工具.输出是foo.exe.我发现了一些非常棒的库,我喜欢使用名为Bar的库,我可以在项目中将其作为bar.dll引用.当我构建我的项目时,我的输出目录中有foo.exe和bar.dll.目前很好.

我想做的是链接foo.exe和bar.dll,因此它们是一个程序集foo.exe.我宁愿能够在VS2008中这样做,但如果我不得不求助于像al.exe这样的命令行工具,我不介意.

.net linker assemblies al.exe visual-studio

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

从Visual Studio 2015 Update 1中的Post-Build事件执行AL.EXE时出现错误-1073741819(0xC0000005)

使用Visual Studio 2015年更新1,我尝试一个问题在Visual C++ CLR类库项目(即没有与Visual Studio 2015年发生的事情)(C++/CLI)运行在生成后事件的命令时Al.exe工具: AL.EXE应用程序崩溃,系统返回错误代码-1073741819(0xC0000005).

这里是构建后事件的内容:

sn -Rca "$(SolutionDir)bin\$(Configuration)\$(Platform)\$(TargetName)$(TargetExt)" dwo
Resgen "$(ProjectDir)Recursos.es-ES.resx" "$(IntDir)$(ProjectName).Recursos.es-ES.resources"
Al.exe /t:lib /embed:"$(IntDir)$(ProjectName).Recursos.es-ES.resources",Recursos.es-ES.resources /version:15.0.0.0 /culture:es-ES /out:"$(OutDir)es-ES\$(TargetName).resources.dll" /keyname:dwo
Run Code Online (Sandbox Code Playgroud)

这里是一个事件查看器的剪辑,每次我从构建后事件(编译我的项目)运行它时都会显示AL.exe应用程序的错误.

在此输入图像描述

命令行是正确的,因为您可以看到我是否从控制台执行它:

在此输入图像描述

所以我确定问题不在于命令行.

此外,我尝试指定另一个AL.EXE命令的路径,因为Visual Studio 2015 Update 1使用路径:

C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.6.1 Tools
Run Code Online (Sandbox Code Playgroud)

所以我尝试了

C:\Program Files (x86)\Microsoft SDKs\Windows\v8.1A\bin\NETFX 4.5.1 Tools
Run Code Online (Sandbox Code Playgroud)

但仍然没有工作.

您可以重现创建新的Visual C++的CLR类库以及在Post-build事件中添加对AL.exe的简单调用的问题.

你知道如何解决这个问题吗?

编辑:我也尝试使用这样的AfterBuild目标:

<Target Name="AfterBuild">
    <Exec Command="Al.exe /t:lib /embed:&quot;$(IntDir)$(ProjectName).Recursos.es-ES.resources&quot;,Recursos.es-ES.resources /version:15.0.0.0 /culture:es-ES /out:&quot;$(OutDir)es-ES\$(TargetName).resources.dll&quot; /keyname:dwo"/>
</Target>
Run Code Online (Sandbox Code Playgroud)

结果是一样的:Visual Studio尝试运行命令AL.EXE但它崩溃返回-1073741819.

crash c++-cli al.exe visual-studio-2015

5
推荐指数
1
解决办法
1383
查看次数