Utilizzo di progetti di distribuzione Web di Visual Studio 2008: viene visualizzato un errore durante la ricerca di aspnet_merge.exe
-
09-06-2019 - |
Domanda
Recentemente ho aggiornato un progetto di distribuzione web VS2005 a VS2008 e ora ricevo il seguente errore durante la creazione:
The specified task executable location "bin\aspnet_merge.exe" is invalid.
Ecco l'origine dell'errore (dal file delle destinazioni di distribuzione Web):
<Target Name="AspNetMerge" Condition="'$(UseMerge)' == 'true'" DependsOnTargets="$(MergeDependsOn)">
<AspNetMerge
ExePath="$(FrameworkSDKDir)bin"
ApplicationPath="$(TempBuildDir)"
KeyFile="$(_FullKeyFile)"
DelaySign="$(DelaySign)"
Prefix="$(AssemblyPrefixName)"
SingleAssemblyName="$(SingleAssemblyName)"
Debug="$(DebugSymbols)"
Nologo="$(NoLogo)"
ContentAssemblyName="$(ContentAssemblyName)"
ErrorStack="$(ErrorStack)"
RemoveCompiledFiles="$(DeleteAppCodeCompiledFiles)"
CopyAttributes="$(CopyAssemblyAttributes)"
AssemblyInfo="$(AssemblyInfoDll)"
MergeXmlDocs="$(MergeXmlDocs)"
ErrorLogFile="$(MergeErrorLogFile)"
/>
Qual è la soluzione a questo problema?
Nota: ho anche creato un progetto di distribuzione Web da zero in VS2008 e ho riscontrato lo stesso errore.
Soluzione
Apparentemente aspnet_merge.exe (e tutti gli altri strumenti SDK) NON sono inclusi nel pacchetto Visual Studio 2008.Visual Studio 2005 ha incluso questi strumenti come parte della sua installazione.
Il posto dove ottenerlo è un'installazione dell'SDK di Windows 2008 (ultimo download).SDK di Windows 7/Windows 2008 R2: Qui
La soluzione è installare Windows SDK e assicurarti di impostare FrameworkSDKDir come variabile di ambiente prima di avviare l'IDE.Comando batch per impostare questa variabile:
SET FrameworkSDKDir="C:\Program Files\Microsoft SDKs\Windows\v6.1"
NOTA:Dovrai modificarlo in modo che punti al punto in cui hai installato l'SDK se non nella posizione predefinita.
Ora VS2008 saprà dove trovare aspnet_merge.exe.
Altri suggerimenti
Ho appena riscontrato lo stesso problema cercando di utilizzare MSBuild per creare la mia applicazione Web su un server.Ho scaricato la versione "web" dell'SDK perché la configurazione è di soli 500 KB e ti chiede quali componenti installare e scarica e installa solo quelli che scegli.Ho deselezionato tutto tranne "Strumenti di sviluppo .NET".Quindi ha scaricato e installato circa 250 MB di materiale, inclusi aspnet_merge.exe e sgen.exe
È possibile scaricare il programma di installazione winsdk_web.exe per Win 7 e .NET 3.5 SP1 Qui.