From 51919c16c682ad987a1b6e9e5dc1fd174ffe3265 Mon Sep 17 00:00:00 2001 From: Rainer Sigwald Date: Tue, 10 Oct 2023 03:24:19 -0500 Subject: [PATCH] Mention unification in RAR found-conflicts message (#9226) * Mention unification in RAR found-conflicts message Consider a message like ``` warning MSB3277: Found conflicts between different versions of "System.Runtime.InteropServices.RuntimeInformation" that could not be resolved. There was a conflict between "System.Runtime.InteropServices.RuntimeInformation, Version=4.0.1.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" and "System.Runtime.InteropServices.RuntimeInformation, Version=4.0.2.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a". "System.Runtime.InteropServices.RuntimeInformation, Version=4.0.1.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" was chosen because it was primary and "System.Runtime.InteropServices.RuntimeInformation, Version=4.0.2.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" was not. References which depend on "System.Runtime.InteropServices.RuntimeInformation, Version=4.0.1.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" [C:\VisualStudio\VS17PrevPublic\Common7\IDE\PublicAssemblies\System.Runtime.InteropServices.RuntimeInformation.dll]. C:\VisualStudio\VS17PrevPublic\Common7\IDE\PublicAssemblies\System.Runtime.InteropServices.RuntimeInformation.dll Project file item includes which caused reference "C:\VisualStudio\VS17PrevPublic\Common7\IDE\PublicAssemblies\System.Runtime.InteropServices.RuntimeInformation.dll". System.Runtime.InteropServices.RuntimeInformation References which depend on "System.Runtime.InteropServices.RuntimeInformation, Version=4.0.2.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" []. C:\Users\user\.nuget\packages\azure.core\1.25.0\lib\net461\Azure.Core.dll Project file item includes which caused reference "C:\Users\user\.nuget\packages\azure.core\1.25.0\lib\net461\Azure.Core.dll". C:\Users\user\.nuget\packages\azure.core\1.25.0\lib\net461\Azure.Core.dll C:\Users\user\.nuget\packages\azure.identity\1.8.0\lib\netstandard2.0\Azure.Identity.dll C:\Users\user\.nuget\packages\azure.security.keyvault.secrets\4.4.0\lib\netstandard2.0\Azure.Security.KeyVault.Secrets.dll C:\Users\user\.nuget\packages\nuget.services.keyvault\2.111.0\lib\net472\NuGet.Services.KeyVault.dll C:\Users\user\.nuget\packages\nuget.services.configuration\2.111.0\lib\net472\NuGet.Services.Configuration.dll ``` What the message _means_ is that the first reference is the winner, and what was chosen there will require unification for all the other assemblies listed in the second part of the message. But what it says is that the list of assemblies in the second part of the message depend on the second version, which is not necessarily true--in fact, that's the list of references that _can be unified_ to that version. This isn't a full fix for #4757 but hopefully makes the message a bit less misleading. * Update tests * fixup! Update tests --- src/Tasks.UnitTests/AssemblyDependency/Miscellaneous.cs | 4 ++-- src/Tasks/AssemblyDependency/ResolveAssemblyReference.cs | 9 ++++++--- src/Tasks/Resources/Strings.resx | 4 ++++ src/Tasks/Resources/xlf/Strings.cs.xlf | 5 +++++ src/Tasks/Resources/xlf/Strings.de.xlf | 5 +++++ src/Tasks/Resources/xlf/Strings.es.xlf | 5 +++++ src/Tasks/Resources/xlf/Strings.fr.xlf | 5 +++++ src/Tasks/Resources/xlf/Strings.it.xlf | 5 +++++ src/Tasks/Resources/xlf/Strings.ja.xlf | 5 +++++ src/Tasks/Resources/xlf/Strings.ko.xlf | 5 +++++ src/Tasks/Resources/xlf/Strings.pl.xlf | 5 +++++ src/Tasks/Resources/xlf/Strings.pt-BR.xlf | 5 +++++ src/Tasks/Resources/xlf/Strings.ru.xlf | 5 +++++ src/Tasks/Resources/xlf/Strings.tr.xlf | 5 +++++ src/Tasks/Resources/xlf/Strings.zh-Hans.xlf | 5 +++++ src/Tasks/Resources/xlf/Strings.zh-Hant.xlf | 5 +++++ 16 files changed, 77 insertions(+), 5 deletions(-) diff --git a/src/Tasks.UnitTests/AssemblyDependency/Miscellaneous.cs b/src/Tasks.UnitTests/AssemblyDependency/Miscellaneous.cs index 9caae9580dd..43d8b0b2016 100644 --- a/src/Tasks.UnitTests/AssemblyDependency/Miscellaneous.cs +++ b/src/Tasks.UnitTests/AssemblyDependency/Miscellaneous.cs @@ -3563,7 +3563,7 @@ public void ConflictBetweenCopyLocalDependenciesRegress444809() ResourceManager resources = new ResourceManager("Microsoft.Build.Tasks.Strings", Assembly.GetExecutingAssembly()); // Unresolved primary reference with itemspec "A, Version=20.0.0.0, Culture=Neutral, PublicKeyToken=null". - engine.AssertLogContainsMessageFromResource(resourceDelegate, "ResolveAssemblyReference.ReferenceDependsOn", "A, Version=1.0.0.0, Culture=Neutral, PublicKeyToken=null", s_regress444809_ADllPath); + engine.AssertLogContainsMessageFromResource(resourceDelegate, "ResolveAssemblyReference.UnifiedReferenceDependsOn", "A, Version=1.0.0.0, Culture=Neutral, PublicKeyToken=null", s_regress444809_ADllPath); engine.AssertLogContainsMessageFromResource(resourceDelegate, "ResolveAssemblyReference.ReferenceDependsOn", "A, Version=2.0.0.0, Culture=Neutral, PublicKeyToken=null", s_regress444809_V2_ADllPath); engine.AssertLogContainsMessageFromResource(resourceDelegate, "ResolveAssemblyReference.PrimarySourceItemsForReference", s_regress444809_CDllPath); engine.AssertLogContainsMessageFromResource(resourceDelegate, "ResolveAssemblyReference.PrimarySourceItemsForReference", s_regress444809_BDllPath); @@ -3609,7 +3609,7 @@ public void ConflictBetweenCopyLocalDependenciesRegress444809UnResolvedPrimaryRe bool result = Execute(t); engine.AssertLogContainsMessageFromResource(resourceDelegate, "ResolveAssemblyReference.ReferenceDependsOn", "A, Version=20.0.0.0, Culture=Neutral, PublicKeyToken=null", String.Empty); - engine.AssertLogContainsMessageFromResource(resourceDelegate, "ResolveAssemblyReference.ReferenceDependsOn", "A, Version=2.0.0.0, Culture=Neutral, PublicKeyToken=null", s_regress444809_V2_ADllPath); + engine.AssertLogContainsMessageFromResource(resourceDelegate, "ResolveAssemblyReference.UnifiedReferenceDependsOn", "A, Version=2.0.0.0, Culture=Neutral, PublicKeyToken=null", s_regress444809_V2_ADllPath); engine.AssertLogContainsMessageFromResource(resourceDelegate, "ResolveAssemblyReference.UnResolvedPrimaryItemSpec", "A, Version=20.0.0.0, Culture=Neutral, PublicKeyToken=null"); engine.AssertLogContainsMessageFromResource(resourceDelegate, "ResolveAssemblyReference.PrimarySourceItemsForReference", s_regress444809_DDllPath); engine.AssertLogContainsMessageFromResource(resourceDelegate, "ResolveAssemblyReference.PrimarySourceItemsForReference", s_regress444809_BDllPath); diff --git a/src/Tasks/AssemblyDependency/ResolveAssemblyReference.cs b/src/Tasks/AssemblyDependency/ResolveAssemblyReference.cs index 69e8109a20b..381fa520766 100644 --- a/src/Tasks/AssemblyDependency/ResolveAssemblyReference.cs +++ b/src/Tasks/AssemblyDependency/ResolveAssemblyReference.cs @@ -1123,7 +1123,7 @@ quiet at the engine level. LogReferenceDependenciesAndSourceItemsToStringBuilder(conflictCandidate.ConflictVictorName.FullName, victor, logDependencies); // Log the reference which lost the conflict and the dependencies and source items which caused it. - LogReferenceDependenciesAndSourceItemsToStringBuilder(fusionName, conflictCandidate, logDependencies.AppendLine()); + LogReferenceDependenciesAndSourceItemsToStringBuilder(fusionName, conflictCandidate, logDependencies.AppendLine(), referenceIsUnified: true); string output = StringBuilderCache.GetStringAndRelease(logConflict); string details = string.Empty; @@ -1320,11 +1320,14 @@ internal static string ByteArrayToString(byte[] a) /// /// Log the source items and dependencies which lead to a given item. /// - private void LogReferenceDependenciesAndSourceItemsToStringBuilder(string fusionName, Reference conflictCandidate, StringBuilder log) + private void LogReferenceDependenciesAndSourceItemsToStringBuilder(string fusionName, Reference conflictCandidate, StringBuilder log, bool referenceIsUnified = false) { ErrorUtilities.VerifyThrowInternalNull(conflictCandidate, nameof(conflictCandidate)); log.Append(Strings.FourSpaces); - log.Append(ResourceUtilities.FormatResourceStringIgnoreCodeAndKeyword("ResolveAssemblyReference.ReferenceDependsOn", fusionName, conflictCandidate.FullPath)); + + string resource = referenceIsUnified ? "ResolveAssemblyReference.UnifiedReferenceDependsOn" : "ResolveAssemblyReference.ReferenceDependsOn"; + + log.Append(ResourceUtilities.FormatResourceStringIgnoreCodeAndKeyword(resource, fusionName, conflictCandidate.FullPath)); if (conflictCandidate.IsPrimary) { diff --git a/src/Tasks/Resources/Strings.resx b/src/Tasks/Resources/Strings.resx index eb1e5e3b341..3ba788b9c76 100644 --- a/src/Tasks/Resources/Strings.resx +++ b/src/Tasks/Resources/Strings.resx @@ -1692,6 +1692,10 @@ References which depend on "{0}" [{1}]. This will look like references which depend on "A, Version=2.0.0.0 PublicKey=4a4fded9gisujf" [a.dll]. + + References which depend on or have been unified to "{0}" [{1}]. + This will look like references which depend on or have been unified to "A, Version=2.0.0.0 PublicKey=4a4fded9gisujf" [a.dll]. + Unresolved primary reference with an item include of "{0}". This messages is for a reference which could not be resolved, however we have its item spec and will display that. {0} will be somethign like System or A, Version=xxx diff --git a/src/Tasks/Resources/xlf/Strings.cs.xlf b/src/Tasks/Resources/xlf/Strings.cs.xlf index fae41cc00f4..1123bb290a8 100644 --- a/src/Tasks/Resources/xlf/Strings.cs.xlf +++ b/src/Tasks/Resources/xlf/Strings.cs.xlf @@ -1940,6 +1940,11 @@ Byla nalezena neplatná PE hlavička. Implementační soubor nebude použit. This message can be used as the {1} in MSB3272 + + References which depend on or have been unified to "{0}" [{1}]. + References which depend on or have been unified to "{0}" [{1}]. + This will look like references which depend on or have been unified to "A, Version=2.0.0.0 PublicKey=4a4fded9gisujf" [a.dll]. + MSB3273: Unknown processor architecture. The implementation file "{0}" for "{1}" had an ImageFileMachine value of "0x{2}". If you wish to use this implementation file make sure the "ResolveAssemblyWarnOrErrorOnTargetArchitectureMismatch" property in your project is set to "Warning" or "None". MSB3273: Neznámá architektura procesoru. V implementačním souboru {0} pro {1} je uvedena hodnota ImageFileMachine 0x{2}. Pokud chcete tento implementační soubor použít, zkontrolujte, zda je vlastnost ResolveAssemblyWarnOrErrorOnTargetArchitectureMismatch ve vašem projektu nastavena na hodnotu Warning nebo None. diff --git a/src/Tasks/Resources/xlf/Strings.de.xlf b/src/Tasks/Resources/xlf/Strings.de.xlf index 59a4deae689..213a45c1e39 100644 --- a/src/Tasks/Resources/xlf/Strings.de.xlf +++ b/src/Tasks/Resources/xlf/Strings.de.xlf @@ -1940,6 +1940,11 @@ Ungültige PE-Kopfzeile gefunden. Die Implementierungsdatei wird nicht verwendet. This message can be used as the {1} in MSB3272 + + References which depend on or have been unified to "{0}" [{1}]. + References which depend on or have been unified to "{0}" [{1}]. + This will look like references which depend on or have been unified to "A, Version=2.0.0.0 PublicKey=4a4fded9gisujf" [a.dll]. + MSB3273: Unknown processor architecture. The implementation file "{0}" for "{1}" had an ImageFileMachine value of "0x{2}". If you wish to use this implementation file make sure the "ResolveAssemblyWarnOrErrorOnTargetArchitectureMismatch" property in your project is set to "Warning" or "None". MSB3273: Unbekannte Prozessorarchitektur. Die Implementierungsdatei "{0}" für "{1}" wies den ImageFileMachine-Wert "0x{2}" auf. Stellen Sie bei der Verwendung dieser Implementierungsdatei sicher, dass die "ResolveAssemblyWarnOrErrorOnTargetArchitectureMismatch"-Eigenschaft im Projekt auf "Warning" oder "None" festgelegt ist. diff --git a/src/Tasks/Resources/xlf/Strings.es.xlf b/src/Tasks/Resources/xlf/Strings.es.xlf index ae7cfb8ec4f..3670a48f8a8 100644 --- a/src/Tasks/Resources/xlf/Strings.es.xlf +++ b/src/Tasks/Resources/xlf/Strings.es.xlf @@ -1940,6 +1940,11 @@ Se encontró un encabezado PE no válido. No se usará el archivo de implementación. This message can be used as the {1} in MSB3272 + + References which depend on or have been unified to "{0}" [{1}]. + References which depend on or have been unified to "{0}" [{1}]. + This will look like references which depend on or have been unified to "A, Version=2.0.0.0 PublicKey=4a4fded9gisujf" [a.dll]. + MSB3273: Unknown processor architecture. The implementation file "{0}" for "{1}" had an ImageFileMachine value of "0x{2}". If you wish to use this implementation file make sure the "ResolveAssemblyWarnOrErrorOnTargetArchitectureMismatch" property in your project is set to "Warning" or "None". MSB3273: Arquitectura de procesador desconocida. El archivo de implementación "{0}" para "{1}" tenía un valor ImageFileMachine de "0x{2}". Si desea usar este archivo de implementación, asegúrese de que la propiedad "ResolveAssemblyWarnOrErrorOnTargetArchitectureMismatch" del proyecto esté establecida en "Warning" o "None". diff --git a/src/Tasks/Resources/xlf/Strings.fr.xlf b/src/Tasks/Resources/xlf/Strings.fr.xlf index 9b160b33de7..5273e70df00 100644 --- a/src/Tasks/Resources/xlf/Strings.fr.xlf +++ b/src/Tasks/Resources/xlf/Strings.fr.xlf @@ -1940,6 +1940,11 @@ En-tête PE non valide détecté. Le fichier d'implémentation ne sera pas utilisé. This message can be used as the {1} in MSB3272 + + References which depend on or have been unified to "{0}" [{1}]. + References which depend on or have been unified to "{0}" [{1}]. + This will look like references which depend on or have been unified to "A, Version=2.0.0.0 PublicKey=4a4fded9gisujf" [a.dll]. + MSB3273: Unknown processor architecture. The implementation file "{0}" for "{1}" had an ImageFileMachine value of "0x{2}". If you wish to use this implementation file make sure the "ResolveAssemblyWarnOrErrorOnTargetArchitectureMismatch" property in your project is set to "Warning" or "None". MSB3273: Architecture de processeur inconnue. Le fichier d'implémentation "{0}" pour "{1}" utilise la valeur "0x{2}" pour ImageFileMachine. Si vous voulez utiliser ce fichier d'implémentation, assurez-vous que la propriété "ResolveAssemblyWarnOrErrorOnTargetArchitectureMismatch" de votre projet est définie à la valeur "Warning" ou "None". diff --git a/src/Tasks/Resources/xlf/Strings.it.xlf b/src/Tasks/Resources/xlf/Strings.it.xlf index e523ac51626..ea3cafa4146 100644 --- a/src/Tasks/Resources/xlf/Strings.it.xlf +++ b/src/Tasks/Resources/xlf/Strings.it.xlf @@ -1940,6 +1940,11 @@ È stata trovata un'intestazione PE non valida. Il file di implementazione non verrà usato. This message can be used as the {1} in MSB3272 + + References which depend on or have been unified to "{0}" [{1}]. + References which depend on or have been unified to "{0}" [{1}]. + This will look like references which depend on or have been unified to "A, Version=2.0.0.0 PublicKey=4a4fded9gisujf" [a.dll]. + MSB3273: Unknown processor architecture. The implementation file "{0}" for "{1}" had an ImageFileMachine value of "0x{2}". If you wish to use this implementation file make sure the "ResolveAssemblyWarnOrErrorOnTargetArchitectureMismatch" property in your project is set to "Warning" or "None". MSB3273: architettura del processore sconosciuta. Il file di implementazione "{0}" per "{1}" ha un valore ImageFileMachine pari a "0x{2}". Per usare questo file di implementazione, verificare che la proprietà "ResolveAssemblyWarnOrErrorOnTargetArchitectureMismatch" del progetto sia impostata su "Avviso" o "Nessuno". diff --git a/src/Tasks/Resources/xlf/Strings.ja.xlf b/src/Tasks/Resources/xlf/Strings.ja.xlf index a1c707f056e..612845b6c95 100644 --- a/src/Tasks/Resources/xlf/Strings.ja.xlf +++ b/src/Tasks/Resources/xlf/Strings.ja.xlf @@ -1940,6 +1940,11 @@ 無効な PE ヘッダーが見つかりました。実装ファイルは使用されません。 This message can be used as the {1} in MSB3272 + + References which depend on or have been unified to "{0}" [{1}]. + References which depend on or have been unified to "{0}" [{1}]. + This will look like references which depend on or have been unified to "A, Version=2.0.0.0 PublicKey=4a4fded9gisujf" [a.dll]. + MSB3273: Unknown processor architecture. The implementation file "{0}" for "{1}" had an ImageFileMachine value of "0x{2}". If you wish to use this implementation file make sure the "ResolveAssemblyWarnOrErrorOnTargetArchitectureMismatch" property in your project is set to "Warning" or "None". MSB3273: 不明なプロセッサ アーキテクチャです。"{1}" の実装ファイル "{0}" の ImageFileMachine 値は "0x{2}" でした。この実装ファイルを使用する場合は、プロジェクトの "ResolveAssemblyWarnOrErrorOnTargetArchitectureMismatch" プロパティに "警告" または "なし" を設定してください。 diff --git a/src/Tasks/Resources/xlf/Strings.ko.xlf b/src/Tasks/Resources/xlf/Strings.ko.xlf index 757be9a3c02..8d0f734b13a 100644 --- a/src/Tasks/Resources/xlf/Strings.ko.xlf +++ b/src/Tasks/Resources/xlf/Strings.ko.xlf @@ -1940,6 +1940,11 @@ 잘못된 PE 헤더를 찾았습니다. 구현 파일이 사용되지 않습니다. This message can be used as the {1} in MSB3272 + + References which depend on or have been unified to "{0}" [{1}]. + References which depend on or have been unified to "{0}" [{1}]. + This will look like references which depend on or have been unified to "A, Version=2.0.0.0 PublicKey=4a4fded9gisujf" [a.dll]. + MSB3273: Unknown processor architecture. The implementation file "{0}" for "{1}" had an ImageFileMachine value of "0x{2}". If you wish to use this implementation file make sure the "ResolveAssemblyWarnOrErrorOnTargetArchitectureMismatch" property in your project is set to "Warning" or "None". MSB3273: 알 수 없는 프로세서 아키텍처입니다. "{1}"에 대한 구현 파일 "{0}"의 ImageFileMachine 값이 "0x{2}"입니다. 이 구현 파일을 사용하려면 프로젝트의 "ResolveAssemblyWarnOrErrorOnTargetArchitectureMismatch" 속성을 "Warning" 또는 "None"으로 지정하세요. diff --git a/src/Tasks/Resources/xlf/Strings.pl.xlf b/src/Tasks/Resources/xlf/Strings.pl.xlf index 8840c4369a4..6ee475eac88 100644 --- a/src/Tasks/Resources/xlf/Strings.pl.xlf +++ b/src/Tasks/Resources/xlf/Strings.pl.xlf @@ -1940,6 +1940,11 @@ Znaleziono nieprawidłowy nagłówek PE. Plik implementacji nie zostanie użyty. This message can be used as the {1} in MSB3272 + + References which depend on or have been unified to "{0}" [{1}]. + References which depend on or have been unified to "{0}" [{1}]. + This will look like references which depend on or have been unified to "A, Version=2.0.0.0 PublicKey=4a4fded9gisujf" [a.dll]. + MSB3273: Unknown processor architecture. The implementation file "{0}" for "{1}" had an ImageFileMachine value of "0x{2}". If you wish to use this implementation file make sure the "ResolveAssemblyWarnOrErrorOnTargetArchitectureMismatch" property in your project is set to "Warning" or "None". MSB3273: Nieznana architektura procesora. Plik implementacji {0} dla „{1}” ma wartość ImageFileMachine równą „0x{2}”. Jeśli chcesz użyć tego pliku implementacji, upewnij się, że dla właściwości „ResolveAssemblyWarnOrErrorOnTargetArchitectureMismatch” w projekcie jest ustawiona wartość „Warning” lub „None”. diff --git a/src/Tasks/Resources/xlf/Strings.pt-BR.xlf b/src/Tasks/Resources/xlf/Strings.pt-BR.xlf index 8be7760268b..5c0017b2742 100644 --- a/src/Tasks/Resources/xlf/Strings.pt-BR.xlf +++ b/src/Tasks/Resources/xlf/Strings.pt-BR.xlf @@ -1940,6 +1940,11 @@ Cabeçalho PE inválido encontrado. O arquivo de implementação não será usado. This message can be used as the {1} in MSB3272 + + References which depend on or have been unified to "{0}" [{1}]. + References which depend on or have been unified to "{0}" [{1}]. + This will look like references which depend on or have been unified to "A, Version=2.0.0.0 PublicKey=4a4fded9gisujf" [a.dll]. + MSB3273: Unknown processor architecture. The implementation file "{0}" for "{1}" had an ImageFileMachine value of "0x{2}". If you wish to use this implementation file make sure the "ResolveAssemblyWarnOrErrorOnTargetArchitectureMismatch" property in your project is set to "Warning" or "None". MSB3273: Arquitetura de processador desconhecida. O arquivo de implementação "{0}" para "{1}" tinha um valor de ImageFileMachine igual a "0x{2}". Se desejar usar esse arquivo de implementação, certifique-se de que a propriedade "ResolveAssemblyWarnOrErrorOnTargetArchitectureMismatch" em seu projeto esteja definida como "Aviso" ou "Nenhum". diff --git a/src/Tasks/Resources/xlf/Strings.ru.xlf b/src/Tasks/Resources/xlf/Strings.ru.xlf index 1821c37dca7..2f18d438266 100644 --- a/src/Tasks/Resources/xlf/Strings.ru.xlf +++ b/src/Tasks/Resources/xlf/Strings.ru.xlf @@ -1940,6 +1940,11 @@ Обнаружен недопустимый PE-заголовок. Файл реализации не будет использован. This message can be used as the {1} in MSB3272 + + References which depend on or have been unified to "{0}" [{1}]. + References which depend on or have been unified to "{0}" [{1}]. + This will look like references which depend on or have been unified to "A, Version=2.0.0.0 PublicKey=4a4fded9gisujf" [a.dll]. + MSB3273: Unknown processor architecture. The implementation file "{0}" for "{1}" had an ImageFileMachine value of "0x{2}". If you wish to use this implementation file make sure the "ResolveAssemblyWarnOrErrorOnTargetArchitectureMismatch" property in your project is set to "Warning" or "None". MSB3273: неизвестная архитектура процессора. Файл реализации "{0}" для "{1}" содержит перечисление ImageFileMachine со значением "0x{2}". Чтобы использовать этот файл реализации, необходимо задать для свойства ResolveAssemblyWarnOrErrorOnTargetArchitectureMismatch в проекте значение Warning или None. diff --git a/src/Tasks/Resources/xlf/Strings.tr.xlf b/src/Tasks/Resources/xlf/Strings.tr.xlf index e72910ae0ad..5a4fa4fcce8 100644 --- a/src/Tasks/Resources/xlf/Strings.tr.xlf +++ b/src/Tasks/Resources/xlf/Strings.tr.xlf @@ -1940,6 +1940,11 @@ Geçersiz PE üst bilgisi bulundu. Uygulama dosyası kullanılmayacak. This message can be used as the {1} in MSB3272 + + References which depend on or have been unified to "{0}" [{1}]. + References which depend on or have been unified to "{0}" [{1}]. + This will look like references which depend on or have been unified to "A, Version=2.0.0.0 PublicKey=4a4fded9gisujf" [a.dll]. + MSB3273: Unknown processor architecture. The implementation file "{0}" for "{1}" had an ImageFileMachine value of "0x{2}". If you wish to use this implementation file make sure the "ResolveAssemblyWarnOrErrorOnTargetArchitectureMismatch" property in your project is set to "Warning" or "None". MSB3273: Bilinmeyen işlemci mimarisi. "{1}" için "{0}" uygulama dosyasında ImageFileMachine değeri olarak "0x{2}" vardı. Bu uygulama dosyasını kullanmak istiyorsanız, projenizdeki "ResolveAssemblyWarnOrErrorOnTargetArchitectureMismatch" özelliğinin "Warning" veya "None" olarak ayarlandığından emin olun. diff --git a/src/Tasks/Resources/xlf/Strings.zh-Hans.xlf b/src/Tasks/Resources/xlf/Strings.zh-Hans.xlf index 414ba0e831c..0954e1402e2 100644 --- a/src/Tasks/Resources/xlf/Strings.zh-Hans.xlf +++ b/src/Tasks/Resources/xlf/Strings.zh-Hans.xlf @@ -1940,6 +1940,11 @@ 找到的 PE 头无效。将不会使用实现文件。 This message can be used as the {1} in MSB3272 + + References which depend on or have been unified to "{0}" [{1}]. + References which depend on or have been unified to "{0}" [{1}]. + This will look like references which depend on or have been unified to "A, Version=2.0.0.0 PublicKey=4a4fded9gisujf" [a.dll]. + MSB3273: Unknown processor architecture. The implementation file "{0}" for "{1}" had an ImageFileMachine value of "0x{2}". If you wish to use this implementation file make sure the "ResolveAssemblyWarnOrErrorOnTargetArchitectureMismatch" property in your project is set to "Warning" or "None". MSB3273: 未知的处理器架构。“{1}”的实现文件“{0}”的 ImageFileMachine 值为“0x{2}”。如果您想要使用此实现文件,请确保项目中的“ResolveAssemblyWarnOrErrorOnTargetArchitectureMismatch”属性设置为“警告”或“无”。 diff --git a/src/Tasks/Resources/xlf/Strings.zh-Hant.xlf b/src/Tasks/Resources/xlf/Strings.zh-Hant.xlf index cf5ea88f40c..1df21db9089 100644 --- a/src/Tasks/Resources/xlf/Strings.zh-Hant.xlf +++ b/src/Tasks/Resources/xlf/Strings.zh-Hant.xlf @@ -1940,6 +1940,11 @@ 發現無效的 PE 標頭。將不使用實作檔。 This message can be used as the {1} in MSB3272 + + References which depend on or have been unified to "{0}" [{1}]. + References which depend on or have been unified to "{0}" [{1}]. + This will look like references which depend on or have been unified to "A, Version=2.0.0.0 PublicKey=4a4fded9gisujf" [a.dll]. + MSB3273: Unknown processor architecture. The implementation file "{0}" for "{1}" had an ImageFileMachine value of "0x{2}". If you wish to use this implementation file make sure the "ResolveAssemblyWarnOrErrorOnTargetArchitectureMismatch" property in your project is set to "Warning" or "None". MSB3273: 未知的處理器架構。"{1}" 的實作檔 "{0}" 中 ImageFileMachine 值為 "0x{2}"。如果要使用這個實作檔,請確定專案中的 "ResolveAssemblyWarnOrErrorOnTargetArchitectureMismatch" 屬性設為 "Warning" 或 "None"。