Mag*_*dhe 9 msbuild tfsbuild satellite-assembly target-framework
是什么决定了卫星装配的目标框架版本?
查看日志文件,我可以看到通过运行ResGen.exe和Al.exe构建附属程序集,但我无法找出决定生成程序集的目标框架的内容.
背景
我正在尝试解决一个问题,当我在构建服务器上构建它时,卫星程序集成为.NET 4.0运行时的目标,但是当我在开发计算机上编译时,目标是.NET 2.0运行时.该解决方案的其余部分针对.NET 2.0运行时,如果针对.NET 4.0运行时,可执行文件将不会加载附属程序集.
我已经尝试使用构建服务器上的msbuild"手动"构建项目,这也导致了针对.NET 2.0运行时的附属程序集.
当我使用自动构建服务器构建时,我只得到错误的目标运行时版本4.0.
Joh*_*man 16
我只花了整整一天跟踪它,但我想我已经解决了.是的,我是烈士.受益于不幸冒险的结果!
我最好的猜测是,Windows 7.1 SDK安装中似乎有一个关于它添加的注册表项的错误.当应该指向7.1时,某些注册表值指向7.0a.此外,某些注册表项名称不正确.
经过一些手动更改后,我的资源DLL又回到了编译框架的相应目标版本.我很确定x64版本不会修改我的修改.使用风险自负!
不过,我个人对我们的构建服务器的黑客注册表不太满意.谁知道我的服务器版本在运行时等待我的其他恐怖事件.我正在考虑安装Visual Studio 2010.
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SDKs\Windows\v7.1\WinSDK-NetFx35Tools]
"InstallationFolder"="C:\\Program Files\\Microsoft SDKs\\Windows\\v7.1\\bin\\"
"ProductVersion"="7.1.7600.0.30514"
"ComponentName"="Microsoft Windows SDK NetFx 3.5 Tools"
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SDKs\Windows\v7.1\WinSDK-NetFx35Tools\1033]
"SP"=dword:00000000
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SDKs\Windows\v7.1\WinSDK-NetFx35Tools-x86]
"InstallationFolder"="C:\\Program Files\\Microsoft SDKs\\Windows\\v7.1\\bin\\"
"ProductVersion"="7.1.7600.0.30514"
"ComponentName"="Microsoft Windows SDK NetFx 3.5 Tools"
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SDKs\Windows\v7.1\WinSDK-NetFx35Tools-x86\1033]
"SP"=dword:00000000
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSBuild\ToolsVersions\4.0]
"MSBuildToolsPath"="c:\\WINDOWS\\Microsoft.NET\\Framework\\v4.0.30319\\"
"MSBuildToolsRoot"="c:\\WINDOWS\\Microsoft.NET\\Framework\\"
"FrameworkSDKRoot"="$(Registry:HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Microsoft SDKs\\Windows\\v7.1@InstallationFolder)"
"MSBuildRuntimeVersion"="4.0.30319"
"SDK40ToolsPath"="$(Registry:HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Microsoft SDKs\\Windows\\v7.1\\WinSDK-NetFx40Tools-x86@InstallationFolder)"
"SDK35ToolsPath"="$(Registry:HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Microsoft SDKs\\Windows\\v7.1\\WinSDK-NetFx35Tools-x86@InstallationFolder)"
"MSBuildToolsPath32"="$(Registry:HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\MSBuild\\ToolsVersions\\4.0@MSBuildToolsPath)"
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3408 次 |
| 最近记录: |