AL任务和ToolPath for x64 [英] AL Task and ToolPath for x64
问题描述
无法在msbuild中使用此功能。无论ToolPath如何,Alink.exe始终位于32位目录中,而不是x64目录中。我使用它的唯一方法是使用cli指定路径,例如msbuild / p:ALToolPath =" C:\Program
Files(x86)\ Myspoftoft SDKs \ Windows \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ >
这是一个错误还是我做错了
谢谢
嗨Iain William Wiseman,
感谢您在此发帖。
>>> 无论ToolPath如何Alink.exe始终位于32位目录中,而不是x64目录中。
这是因为从Visual Studio 2008开始,包括C#和Visual Basic编译器自动将Win32清单嵌入到程序集中。有关更多信息,请参阅
Al.exe(程序集链接器)。
因此,如果我们使用cli而不指定路径,则将选择默认的32位目录。如果要从x64目录使用Al.exe,可以使用Set命令为单个会话设置ALTOOLPATH,或者在永久环境中设置路径
变量或指定ALToolPath通过MSBuild命令行,就像你所做的那样。
希望这可以帮助你。
Hi,
Cannot get this to work in msbuild. Regardless of the ToolPath the Alink.exe is always found in the 32-bit directory rather than the x64 one. The only way I have got this to work is to use the cli to specify the path e.g. msbuild /p:ALToolPath="C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.6.1 Tools\x64"
Is this a bug or am I doing it wrong
Thanks
Hi Iain William Wiseman,
Thanks for posting here.
>>>Regardless of the ToolPath the Alink.exe is always found in the 32-bit directory rather than the x64 one.
That is because that starting with Visual Studio 2008, both the C# and Visual Basic compilers automatically embed a Win32 manifest into the assembly. For more information you can refer to the Al.exe (Assembly Linker).
So if we use the cli without specify the path, the default 32-bit directory will be selected. If you want to use Al.exe from x64 directory, you can set ALTOOLPATH for an individual session using the Set command, or set the path in the environment variable permanently or specify the ALToolPath by MSBuild command line, just as what you did.
Hope this can help you.
这篇关于AL任务和ToolPath for x64的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!