From 9a5fa7445c47e65e1cd454a5255b671ed81b3ae4 Mon Sep 17 00:00:00 2001
From: Jackson Schuster <36744439+jtschuster@users.noreply.github.com>
Date: Wed, 9 Aug 2023 15:16:30 -0500
Subject: [PATCH] Reword diagnostic about which types can use [out], remove
unused diagnostics (#90188)
---
.../GeneratorDiagnostics.cs | 8 +++---
.../gen/Common/Resources/Strings.resx | 18 ++----------
.../gen/Common/Resources/xlf/Strings.cs.xlf | 28 +++----------------
.../gen/Common/Resources/xlf/Strings.de.xlf | 28 +++----------------
.../gen/Common/Resources/xlf/Strings.es.xlf | 28 +++----------------
.../gen/Common/Resources/xlf/Strings.fr.xlf | 28 +++----------------
.../gen/Common/Resources/xlf/Strings.it.xlf | 28 +++----------------
.../gen/Common/Resources/xlf/Strings.ja.xlf | 28 +++----------------
.../gen/Common/Resources/xlf/Strings.ko.xlf | 28 +++----------------
.../gen/Common/Resources/xlf/Strings.pl.xlf | 28 +++----------------
.../Common/Resources/xlf/Strings.pt-BR.xlf | 28 +++----------------
.../gen/Common/Resources/xlf/Strings.ru.xlf | 28 +++----------------
.../gen/Common/Resources/xlf/Strings.tr.xlf | 28 +++----------------
.../Common/Resources/xlf/Strings.zh-Hans.xlf | 28 +++----------------
.../Common/Resources/xlf/Strings.zh-Hant.xlf | 28 +++----------------
.../CompileFails.cs | 10 +------
16 files changed, 60 insertions(+), 340 deletions(-)
diff --git a/src/libraries/System.Runtime.InteropServices/gen/ComInterfaceGenerator/GeneratorDiagnostics.cs b/src/libraries/System.Runtime.InteropServices/gen/ComInterfaceGenerator/GeneratorDiagnostics.cs
index 621e4c9b17001..418009d192a3b 100644
--- a/src/libraries/System.Runtime.InteropServices/gen/ComInterfaceGenerator/GeneratorDiagnostics.cs
+++ b/src/libraries/System.Runtime.InteropServices/gen/ComInterfaceGenerator/GeneratorDiagnostics.cs
@@ -154,7 +154,7 @@ public class Ids
public static readonly DiagnosticDescriptor ParameterTypeNotSupported =
new DiagnosticDescriptor(
Ids.TypeNotSupported,
- GetResourceString(nameof(SR.TypeNotSupportedTitle)),
+ GetResourceString(nameof(SR.TypeNotSupportedTitleCom)),
GetResourceString(nameof(SR.TypeNotSupportedMessageParameterCom)),
Category,
DiagnosticSeverity.Error,
@@ -165,7 +165,7 @@ public class Ids
public static readonly DiagnosticDescriptor ReturnTypeNotSupported =
new DiagnosticDescriptor(
Ids.TypeNotSupported,
- GetResourceString(nameof(SR.TypeNotSupportedTitle)),
+ GetResourceString(nameof(SR.TypeNotSupportedTitleCom)),
GetResourceString(nameof(SR.TypeNotSupportedMessageReturnCom)),
Category,
DiagnosticSeverity.Error,
@@ -176,7 +176,7 @@ public class Ids
public static readonly DiagnosticDescriptor ParameterTypeNotSupportedWithDetails =
new DiagnosticDescriptor(
Ids.TypeNotSupported,
- GetResourceString(nameof(SR.TypeNotSupportedTitle)),
+ GetResourceString(nameof(SR.TypeNotSupportedTitleCom)),
GetResourceString(nameof(SR.TypeNotSupportedMessageParameterWithDetails)),
Category,
DiagnosticSeverity.Error,
@@ -187,7 +187,7 @@ public class Ids
public static readonly DiagnosticDescriptor ReturnTypeNotSupportedWithDetails =
new DiagnosticDescriptor(
Ids.TypeNotSupported,
- GetResourceString(nameof(SR.TypeNotSupportedTitle)),
+ GetResourceString(nameof(SR.TypeNotSupportedTitleCom)),
GetResourceString(nameof(SR.TypeNotSupportedMessageReturnWithDetails)),
Category,
DiagnosticSeverity.Error,
diff --git a/src/libraries/System.Runtime.InteropServices/gen/Common/Resources/Strings.resx b/src/libraries/System.Runtime.InteropServices/gen/Common/Resources/Strings.resx
index a096158343d16..39b19f67fe7b3 100644
--- a/src/libraries/System.Runtime.InteropServices/gen/Common/Resources/Strings.resx
+++ b/src/libraries/System.Runtime.InteropServices/gen/Common/Resources/Strings.resx
@@ -840,7 +840,7 @@
Specified type is not supported by source-generated P/Invokes
-
+
Specified type is not supported by source-generated COM
@@ -874,20 +874,8 @@
[In] and [Out] attributes
-
- This parameter is marshalled by pinning and does not support the '[In]' attribute without the '[Out]' attribute.
-
-
- This parameter is marshalled by pinning and is '[In, Out]' by default.
-
-
- The 'in' keyword is not supported on parameters that are marshalled by pinning. Use 'ref' or 'out' instead.
-
-
- '[In]' and '[Out]' attributes are not supported on this type.
-
- The `[Out]` attribute is only supported on array parameters and parameters marshalled by pinning. Consider using 'out' or 'ref' keywords to make the parameter mutable.
+ The `[Out]` attribute is only supported on array parameters. Consider using 'out' or 'ref' keywords to make the parameter mutable.The return value in the managed definition will be converted to an 'out' parameter when calling the unmanaged COM method. If the return value is intended to be the HRESULT code returned by the unmanaged COM method, use '[PreserveSig]' on the method.
@@ -895,4 +883,4 @@
The return value in the managed definition will be converted to an additional 'out' parameter at the end of the parameter list when calling the unmanaged COM method.
-
+
\ No newline at end of file
diff --git a/src/libraries/System.Runtime.InteropServices/gen/Common/Resources/xlf/Strings.cs.xlf b/src/libraries/System.Runtime.InteropServices/gen/Common/Resources/xlf/Strings.cs.xlf
index e2c18dab20458..e1b1a90cd1d84 100644
--- a/src/libraries/System.Runtime.InteropServices/gen/Common/Resources/xlf/Strings.cs.xlf
+++ b/src/libraries/System.Runtime.InteropServices/gen/Common/Resources/xlf/Strings.cs.xlf
@@ -447,11 +447,6 @@
Atribut „[In]“ není nezbytný, pokud není použit také atribut „[Out]“. Chování atributu „[In]“ bez atributu „[Out]“ je stejné, jako výchozí chování.
-
-
- Tento parametr je zařazován připnutím a nepodporuje atribut [In] bez atributu [Out].
-
- Atributy „[In]“ a „[Out]“ se nepodporují u parametrů předaných odkazem. Použijte místo nich klíčová slova „in“, „ref“ nebo „out“.
@@ -467,11 +462,6 @@
atributy [In] a [Out]
-
-
- Klíčové slovo „in“ není podporováno u parametrů, které jsou zařazeny připnutím. Místo toho použijte „ref“ nebo „out“.
-
- Události nejsou konceptem COM, takže pro události instance na rozhraních COM generovaných zdrojem nebude vygenerován žádný kód spolupráce.
@@ -903,8 +893,8 @@
-
- Atribut [Out] je podporován pouze u parametrů pole a parametrů zařazených připnutím. Zvažte použití klíčových slov out nebo ref, aby byl parametr měnitelný.
+
+ Atribut [Out] je podporován pouze u parametrů pole a parametrů zařazených připnutím. Zvažte použití klíčových slov out nebo ref, aby byl parametr měnitelný.
@@ -917,11 +907,6 @@
Typ {0}určuje, že podporuje zařazování ve směru „Out“, ale neposkytuje metodu ToManaged, která vrací spravovaný typ
-
-
- Tento parametr se zařazuje připnutím a ve výchozím nastavení je [In, Out].
-
- GeneratedComInterfaceAttribute a GeneratedComClassAttribute vyžadují nebezpečný kód. Projekt se musí aktualizovat na <AllowUnsafeBlocks>true</AllowUnsafeBlocks>.
@@ -1162,11 +1147,6 @@
„{0}“ má přístupnost „{1}“.
-
-
- Atributy [In] a [Out] nejsou u tohoto typu podporovány.
-
- Nespravovaný typ vlastního zařazovacího modulu musí být nespravovaný typ jazyka C#.
@@ -1234,9 +1214,9 @@
Určený typ nepodporují zdrojem generovaná volání P/Invokes.
-
+
- Zadaný typ není podporován modelem COM generovaným zdrojem.
+ Specified type is not supported by source-generated COM
diff --git a/src/libraries/System.Runtime.InteropServices/gen/Common/Resources/xlf/Strings.de.xlf b/src/libraries/System.Runtime.InteropServices/gen/Common/Resources/xlf/Strings.de.xlf
index d085560facf7f..5f1a7987ffd94 100644
--- a/src/libraries/System.Runtime.InteropServices/gen/Common/Resources/xlf/Strings.de.xlf
+++ b/src/libraries/System.Runtime.InteropServices/gen/Common/Resources/xlf/Strings.de.xlf
@@ -447,11 +447,6 @@
Das [In]-Attribut ist nur erforderlich, wenn auch das [Out]-Attribut verwendet wird. Das Verhalten des [In]-Attributs ohne das [Out]-Attribut entspricht dem Standardverhalten.
-
-
- Dieser Parameter wird durch Anheften gemarshallt und unterstützt das [In]-Attribut ohne das [Out]-Attribut nicht.
-
- Die Attribute \"[In]\" und \"[Out]\" werden für Parameter, die als Verweis übergeben werden, nicht unterstützt. Verwenden Sie stattdessen die Schlüsselwörter \"in\", \"ref\" oder \"out\".
@@ -467,11 +462,6 @@
[In]- und [Out]-Attribute
-
-
- Das Schlüsselwort "in" wird für Parameter, die durch Anheften gemarshallt werden, nicht unterstützt. Verwenden Sie stattdessen "ref" oder "out".
-
- Ereignisse sind kein Konzept in COM, daher wird kein Interopcode für Instanzereignisse auf von der Quelle generierten COM-Schnittstellen generiert.
@@ -903,8 +893,8 @@
-
- Das [Out]-Attribut wird nur für Arrayparameter und Parameter unterstützt, die durch Anheften gemarshallt werden. Erwägen Sie die Verwendung der Schlüsselwörter "out" oder "ref", um den Parameter änderbar zu machen.
+
+ Das [Out]-Attribut wird nur für Arrayparameter und Parameter unterstützt, die durch Anheften gemarshallt werden. Erwägen Sie die Verwendung der Schlüsselwörter "out" oder "ref", um den Parameter änderbar zu machen.
@@ -917,11 +907,6 @@
Der Typ \"{0}\" gibt an, dass das Marshalling in der Out-Richtung unterstützt wird. Er stellt jedoch keine ToManaged-Methode bereit, die den verwalteten Typ zurückgibt.
-
-
- Dieser Parameter wird durch Anheften gemarshallt und ist standardmäßig "[In, Out]".
-
- 'GeneratedComInterfaceAttribute' und 'GeneratedComClassAttribute' erfordern unsicheren Code. Das Projekt muss mit '<AllowUnsafeBlocks>wahr</AllowUnsafeBlocks>' aktualisiert werden.
@@ -1162,11 +1147,6 @@
'{0}' verfügt über Barrierefreiheit '{1}'.
-
-
- Die Attribute "[In]" und "[Out]" werden für diesen Typ nicht unterstützt.
-
- Der nicht verwaltete Typ für einen benutzerdefinierten Marshaller muss ein nicht verwalteter C#-Typ sein.
@@ -1234,9 +1214,9 @@
Der angegebene Typ wird von quellgenerierten P/Invokes nicht unterstützt.
-
+
- Der angegebene Typ wird vom quellgenerierten COM nicht unterstützt.
+ Specified type is not supported by source-generated COM
diff --git a/src/libraries/System.Runtime.InteropServices/gen/Common/Resources/xlf/Strings.es.xlf b/src/libraries/System.Runtime.InteropServices/gen/Common/Resources/xlf/Strings.es.xlf
index 0307795f45eb2..147c7bc35eb31 100644
--- a/src/libraries/System.Runtime.InteropServices/gen/Common/Resources/xlf/Strings.es.xlf
+++ b/src/libraries/System.Runtime.InteropServices/gen/Common/Resources/xlf/Strings.es.xlf
@@ -447,11 +447,6 @@
El atributo '[In]' no es necesario a menos que también se use el atributo '[Out]'. El comportamiento del atributo '[In]' sin el atributo '[Out]' es el mismo que el comportamiento predeterminado.
-
-
- Este parámetro se serializa mediante el anclaje y no admite el atributo '[In]' sin el atributo '[Out]'.
-
- Los atributos “[In]” y “[Out]” no se admiten en los parámetros pasados por referencia. Use las palabras clave “in”, “ref” o “out” en su lugar.
@@ -467,11 +462,6 @@
Atributos [In] y [Out]
-
-
- La palabra clave 'in' no se admite en parámetros que se aplana mediante el anclaje. Use "ref" o "out" en su lugar.
-
- Los eventos no representan un concepto en COM, de modo que no se generará código de interoperabilidad para eventos de instancia en interfaces COM generadas en origen.
@@ -903,8 +893,8 @@
-
- El atributo '[Out]' solo se admite en parámetros de matriz y parámetros aplanados mediante el anclaje. Considere la posibilidad de usar palabras clave 'out' o 'ref' para hacer que el parámetro sea mutable.
+
+ El atributo '[Out]' solo se admite en parámetros de matriz y parámetros aplanados mediante el anclaje. Considere la posibilidad de usar palabras clave 'out' o 'ref' para hacer que el parámetro sea mutable.
@@ -917,11 +907,6 @@
El tipo “{0}” especifica que admite la serialización en la dirección “Out”, pero no proporciona un método “ToManaged” que devuelva el tipo administrado
-
-
- Este parámetro se serializa mediante el anclaje y es '[In, Out]' de forma predeterminada.
-
- "GeneratedComInterfaceAttribute" y "GeneratedComClassAttribute" requieren código no seguro. El proyecto debe actualizarse con "<AllowUnsafeBlocks>true</AllowUnsafeBlocks>".
@@ -1162,11 +1147,6 @@
'{0}' tiene accesibilidad '{1}'.
-
-
- Los atributos '[In]' y '[Out]' no se admiten en este tipo.
-
- El tipo no administrado de un serializador personalizado debe ser un tipo no administrado de C#.
@@ -1234,9 +1214,9 @@
El tipo especificado no está admitido por P/Invokes de un generador de código fuente
-
+
- El tipo especificado no es compatible con COM generado por el origen
+ Specified type is not supported by source-generated COM
diff --git a/src/libraries/System.Runtime.InteropServices/gen/Common/Resources/xlf/Strings.fr.xlf b/src/libraries/System.Runtime.InteropServices/gen/Common/Resources/xlf/Strings.fr.xlf
index fdbcb443261ef..7a3a880eee4a7 100644
--- a/src/libraries/System.Runtime.InteropServices/gen/Common/Resources/xlf/Strings.fr.xlf
+++ b/src/libraries/System.Runtime.InteropServices/gen/Common/Resources/xlf/Strings.fr.xlf
@@ -447,11 +447,6 @@
L’attribut '[In]' n’est pas nécessaire, sauf si l’attribut '[Out]' est également utilisé. Le comportement de l’attribut « [In] » sans l’attribut « [Out] » est le même que le comportement par défaut.
-
-
- Ce paramètre est marshalé par épinglage et ne prend pas en charge l’attribut '[In]' sans l’attribut '[Out]'.
-
- Les attributs « [In] » et « [Out] » ne sont pas pris en charge sur les paramètres passés par référence. Utilisez les mots clés « in », « ref » ou 'out' à la place.
@@ -467,11 +462,6 @@
Attributs [In] et [Out]
-
-
- Le mot clé 'in' n’est pas pris en charge sur les paramètres qui sont marshalés par épinglage. Utilisez 'ref' ou 'out' à la place.
-
- Les événements ne sont pas un concept dans COM. Par conséquent, aucun code d’interopérabilité n’est généré à la source pour les événements d’instance sur les interfaces COM générées par la source.
@@ -903,8 +893,8 @@
-
- L’attribut '[Out]' est uniquement pris en charge sur les paramètres de tableau et les paramètres marshalés par épinglage. Envisagez d’utiliser des mots clés 'out' ou 'ref' pour rendre le paramètre mutable.
+
+ L’attribut '[Out]' est uniquement pris en charge sur les paramètres de tableau et les paramètres marshalés par épinglage. Envisagez d’utiliser des mots clés 'out' ou 'ref' pour rendre le paramètre mutable.
@@ -917,11 +907,6 @@
Le type « {0} » spécifie qu’il prend en charge le marshaling dans la direction « Out », mais il ne fournit pas de méthode « ToManaged » qui retourne le type managé
-
-
- Ce paramètre est marshalé par épinglage et est « [In, Out] » par défaut.
-
- « GeneratedComInterfaceAttribute » et « GeneratedComClassAttribute » nécessitent du code non sécurisé. Le projet doit être mis à jour avec « <AllowUnsafeBlocks>true</AllowUnsafeBlocks> ».
@@ -1162,11 +1147,6 @@
'{0}' a une accessibilité '{1}'.
-
-
- Les attributs '[In]' et '[Out]' ne sont pas pris en charge sur ce type.
-
- Le type non managé d’un marshaleur personnalisé doit être un type non managé C#.
@@ -1234,9 +1214,9 @@
Le type spécifié n’est pas prise en charge par les P/Invokes générés par la source.
-
+
- Le type spécifié n’est pas pris en charge par com généré par la source
+ Specified type is not supported by source-generated COM
diff --git a/src/libraries/System.Runtime.InteropServices/gen/Common/Resources/xlf/Strings.it.xlf b/src/libraries/System.Runtime.InteropServices/gen/Common/Resources/xlf/Strings.it.xlf
index a0aa417a60164..72ee7c6d199eb 100644
--- a/src/libraries/System.Runtime.InteropServices/gen/Common/Resources/xlf/Strings.it.xlf
+++ b/src/libraries/System.Runtime.InteropServices/gen/Common/Resources/xlf/Strings.it.xlf
@@ -447,11 +447,6 @@
L'attributo '[In]' non è necessario a meno che non venga usato anche l'attributo '[Out]'. Il comportamento dell'attributo '[In]' senza l'attributo '[Out]' è uguale a quello predefinito.
-
-
- Il marshalling di questo parametro viene eseguito tramite aggiunta e non supporta l'attributo '[In]' senza l'attributo '[Out]'.
-
- Gli attributi '[In]' e '[Out]' non sono supportati nei parametri passati per riferimento. Usare le parole chiave 'in', 'ref' o 'out'.
@@ -467,11 +462,6 @@
Attributi [In] e [Out]
-
-
- La parola chiave 'in' non è supportata nei parametri di cui viene eseguito il marshalling tramite l'aggiunta. In alternativa, usare 'ref' oppure 'out'.
-
- Gli eventi non sono concetti in COM quindi non verrà generato codice di interoperabilità per gli eventi dell’istanza nelle interfacce COM generate dall'origine.
@@ -903,8 +893,8 @@
-
- L'attributo '[Out]' è supportato solo nei parametri di matrice e nei parametri di cui è stato eseguito il marshalling tramite l'aggiunta. Provare a usare parole chiave 'out' o 'ref' per rendere modificabile il parametro.
+
+ L'attributo '[Out]' è supportato solo nei parametri di matrice e nei parametri di cui è stato eseguito il marshalling tramite l'aggiunta. Provare a usare parole chiave 'out' o 'ref' per rendere modificabile il parametro.
@@ -917,11 +907,6 @@
Il tipo '{0}' specifica che supporta il marshalling nella direzione 'Out', ma non fornisce un metodo 'ToManaged' che restituisce il tipo gestito
-
-
- Il marshalling di questo parametro viene eseguito tramite aggiunta ed è '[In, Out]' per impostazione predefinita.
-
- GeneratedComInterfaceAttribute e 'GeneratedComClassAttribute' richiedono codice non gestito. Il progetto deve essere aggiornato con '<AllowUnsafeBlocks>true</AllowUnsafeBlocks>'.
@@ -1162,11 +1147,6 @@
'{0}' ha accessibilità '{1}'.
-
-
- Gli attributi '[In]' e '[Out]' non sono supportati in questo tipo.
-
- Il tipo non gestito per un marshaller personalizzato deve essere un tipo non gestito C#.
@@ -1234,9 +1214,9 @@
Il tipo specificato non è supportato dai P/Invoke generati dall'origine
-
+
- Il tipo specificato non è supportato da COM generati dall'origine
+ Specified type is not supported by source-generated COM
diff --git a/src/libraries/System.Runtime.InteropServices/gen/Common/Resources/xlf/Strings.ja.xlf b/src/libraries/System.Runtime.InteropServices/gen/Common/Resources/xlf/Strings.ja.xlf
index 85834a4023adc..d9369c066ada6 100644
--- a/src/libraries/System.Runtime.InteropServices/gen/Common/Resources/xlf/Strings.ja.xlf
+++ b/src/libraries/System.Runtime.InteropServices/gen/Common/Resources/xlf/Strings.ja.xlf
@@ -447,11 +447,6 @@
'[In]' 属性は、'[Out]' 属性も使用しない限り必要ではありません。'[Out]' 属性なしでの '[In]' 属性の動作は、既定の動作と同じです。
-
-
- このパラメーターは固定によってマーシャリングされ、'[Out]'属性のない'[In]'属性はサポートされません。
-
- '[In]' 属性と '[Out]' 属性は、参照渡しされたパラメーターではサポートされていません。代わりに 'in'、'ref'、または 'out' キーワードを使用します。
@@ -467,11 +462,6 @@
属性の[In]と[Out]
-
-
- 'in' キーワード (keyword)は、固定によってマーシャリングされたパラメーターではサポートされていません。代わりに 'ref' または 'out' を使用してください。
-
- イベントは COM の概念ではないため、ソース生成 COM インターフェイス上のインスタンス イベントに対して相互運用コードはソース生成されません。
@@ -903,8 +893,8 @@
-
- '[Out]' 属性は、固定によってマーシャリングされた配列パラメーターとパラメーターでのみサポートされます。パラメーターを変更可能にするには、'out' または 'ref' キーワードを使用することを検討してください。
+
+ '[Out]' 属性は、固定によってマーシャリングされた配列パラメーターとパラメーターでのみサポートされます。パラメーターを変更可能にするには、'out' または 'ref' キーワードを使用することを検討してください。
@@ -917,11 +907,6 @@
型 '{0}' は、'Out' 方向のマーシャリングをサポートしますが、マネージド型を返す 'ToManaged' メソッドは指定されません
-
-
- このパラメーターはピン留めによってマーシャリングされ、既定では '[In, Out]' です。
-
- 'GeneratedComInterfaceAttribute' および 'GeneratedComClassAttribute' にはアンセーフ コードが必要です。プロジェクトは '<AllowUnsafeBlocks>true</AllowUnsafeBlocks>' で更新する必要があります。
@@ -1163,11 +1148,6 @@
'{0}' にはアクセシビリティ '{1}' があります。
-
-
- '[In]'属性および'[Out]'属性は、この型ではサポートされていません。
-
- カスタム マーシャラーのアンマネージド型は、C# アンマネージド型である必要があります。
@@ -1235,9 +1215,9 @@
指定された型は、ソースで生成された P/Invoke ではサポートされていません
-
+
- 指定された型は、ソース生成済みの COM ではサポートされていません
+ Specified type is not supported by source-generated COM
diff --git a/src/libraries/System.Runtime.InteropServices/gen/Common/Resources/xlf/Strings.ko.xlf b/src/libraries/System.Runtime.InteropServices/gen/Common/Resources/xlf/Strings.ko.xlf
index 546cdfa094717..e1bbee48c2b46 100644
--- a/src/libraries/System.Runtime.InteropServices/gen/Common/Resources/xlf/Strings.ko.xlf
+++ b/src/libraries/System.Runtime.InteropServices/gen/Common/Resources/xlf/Strings.ko.xlf
@@ -447,11 +447,6 @@
'[In]' 특성은 '[Out]' 특성도 함께 사용되지 않는 한 필요하지 않습니다. '[Out]' 특성이 없는 '[In]' 특성의 동작은 기본 동작과 동일합니다.
-
-
- 이 매개 변수는 고정을 통해 마샬링되며 '[Out]' 특성이 없는 '[In]' 특성을 지원하지 않습니다.
-
- '[In]' 및 '[Out]' 특성은 참조로 전달된 매개 변수에서 지원되지 않습니다. 대신 'in', 'ref' 또는 'out' 키워드를 사용하세요.
@@ -467,11 +462,6 @@
[In] 및 [Out] 속성
-
-
- 'in' 키워드는 고정을 통해 마샬링되는 매개 변수에서 지원되지 않습니다. 대신 'ref' 또는 'out'을 사용하세요.
-
- 이벤트는 COM의 개념이 아니므로 소스 생성 COM 인터페이스의 인스턴스 이벤트에 대해 interop 코드가 생성되지 않습니다.
@@ -903,8 +893,8 @@
-
- '[Out]' 특성은 고정으로 마샬링된 배열 매개 변수 및 매개 변수에서만 지원됩니다. 매개 변수를 변경할 수 있도록 하려면 'out' 또는 'ref' 키워드를 사용하세요.
+
+ '[Out]' 특성은 고정으로 마샬링된 배열 매개 변수 및 매개 변수에서만 지원됩니다. 매개 변수를 변경할 수 있도록 하려면 'out' 또는 'ref' 키워드를 사용하세요.
@@ -917,11 +907,6 @@
형식 '{0}'은(는) 'Out' 방향으로 마샬링을 지원하도록 지정하지만 관리 형식을 반환하는 'ToManaged' 메서드를 제공하지 않습니다.
-
-
- 이 매개 변수는 고정으로 마샬링되며 기본적으로 '[In, Out]'입니다.
-
- 'GeneratedComInterfaceAttribute' 및 'GeneratedComClassAttribute'에는 안전하지 않은 코드가 필요합니다. 프로젝트를 '<AllowUnsafeBlocks>true</AllowUnsafeBlocks>'로 업데이트해야 합니다.
@@ -1162,11 +1147,6 @@
'{0}'에는 접근성 '{1}'이(가) 있습니다.
-
-
- '[In]' 및 '[Out]' 특성은 이 형식에서 지원되지 않습니다.
-
- 사용자 지정 마샬러의 비관리형 형식은 C# 비관리형 형식이어야 합니다.
@@ -1234,9 +1214,9 @@
지정된 형식은 소스 생성 P/Invoke에서 지원되지 않습니다.
-
+
- 지정된 형식은 원본 생성 COM에서 지원되지 않습니다.
+ Specified type is not supported by source-generated COM
diff --git a/src/libraries/System.Runtime.InteropServices/gen/Common/Resources/xlf/Strings.pl.xlf b/src/libraries/System.Runtime.InteropServices/gen/Common/Resources/xlf/Strings.pl.xlf
index e1adb5d335b29..091f4f56a3762 100644
--- a/src/libraries/System.Runtime.InteropServices/gen/Common/Resources/xlf/Strings.pl.xlf
+++ b/src/libraries/System.Runtime.InteropServices/gen/Common/Resources/xlf/Strings.pl.xlf
@@ -447,11 +447,6 @@
Atrybut „[In]” nie jest potrzebny, chyba że używany jest również atrybut „[Out]”. Zachowanie atrybutu „[In]” bez atrybutu „[Out]” jest takie samo jak zachowanie domyślne.
-
-
- Ten parametr jest kierowany przez przypinanie i nie obsługuje atrybutu „[In]” bez atrybutu „[Out]”.
-
- Atrybuty „[In]” i „[Out]” nie są obsługiwane w parametrach przekazywanych przez odwołanie. Zamiast tego użyj słów kluczowych „in”, „ref” lub „out”.
@@ -467,11 +462,6 @@
Atrybuty [In] i [Out]
-
-
- Słowo kluczowe „in” nie jest obsługiwane w przypadku parametrów, które są kierowane przez przypinanie. Zamiast tego użyj elementu „ref” lub „out”.
-
- Zdarzenia nie są koncepcją w modelu COM, więc żaden kod międzyoperacyjny nie będzie generowany dla zdarzeń wystąpień w interfejsach COM generowanych źródłowo.
@@ -903,8 +893,8 @@
-
- Atrybut `[Out]` jest obsługiwany tylko w przypadku parametrów tablicy i parametrów kierowanych przez przypinanie. Rozważ użycie słów kluczowych „out” lub „ref”, aby umożliwić modyfikowanie parametru.
+
+ Atrybut `[Out]` jest obsługiwany tylko w przypadku parametrów tablicy i parametrów kierowanych przez przypinanie. Rozważ użycie słów kluczowych „out” lub „ref”, aby umożliwić modyfikowanie parametru.
@@ -917,11 +907,6 @@
Typ „{0}” określa, że obsługuje skierowanie w kierunku „Out”, ale nie zapewnia metody „ToManaged”, która zwraca typ zarządzany
-
-
- Ten parametr jest kierowany przez przypinanie i domyślnie ma wartość „[In, Out]”.
-
- Atrybut „GeneratedComInterfaceAttribute” i „GeneratedComClassAttribute” wymagają niebezpiecznego kodu. Projekt musi zostać zaktualizowany za pomocą polecenia „<AllowUnsafeBlocks>true</AllowUnsafeBlocks>”.
@@ -1162,11 +1147,6 @@
„{0}” ma ułatwienia dostępu „{1}”.
-
-
- Atrybuty „[In]” i „[Out]” nie są obsługiwane w przypadku tego typu.
-
- Typ niezarządzany dla niestandardowego organizatora musi być niezarządzanym typem języka C#.
@@ -1234,9 +1214,9 @@
Określony typ nie jest obsługiwany przez funkcję P/Invokes generowaną przez źródło
-
+
- Określony typ nie jest obsługiwany przez źródłowy COM
+ Specified type is not supported by source-generated COM
diff --git a/src/libraries/System.Runtime.InteropServices/gen/Common/Resources/xlf/Strings.pt-BR.xlf b/src/libraries/System.Runtime.InteropServices/gen/Common/Resources/xlf/Strings.pt-BR.xlf
index 7bd7f73064878..c551c0a7b047b 100644
--- a/src/libraries/System.Runtime.InteropServices/gen/Common/Resources/xlf/Strings.pt-BR.xlf
+++ b/src/libraries/System.Runtime.InteropServices/gen/Common/Resources/xlf/Strings.pt-BR.xlf
@@ -447,11 +447,6 @@
O atributo '[In]' não é necessário, a menos que o atributo '[Out]' também seja usado. O comportamento do atributo '[In]' sem o atributo '[Out]' é igual ao comportamento padrão.
-
-
- Este parâmetro é empacotado por fixação e não suporta o atributo '[In]' sem o atributo '[Out]'.
-
- Os atributos '[In]' e '[Out]' não têm suporte em parâmetros passados por referência. Use as palavras-chave 'in', 'ref' ou 'out'.
@@ -467,11 +462,6 @@
Atributos [In] e [Out]
-
-
- A palavra-chave 'in' não é suportada em parâmetros que são organizados por fixação. Em vez disso, use 'ref' ou 'out'.
-
- Os eventos não são um conceito em COM, portanto, nenhum código de interoperabilidade será gerado para eventos de instância em interfaces COM geradas pela origem.
@@ -903,8 +893,8 @@
-
- O atributo '[Out]' só tem suporte em parâmetros de matriz e parâmetros nos quais foi realizado marshaling por fixação. Considere usar as palavras-chave 'out' ou 'ref' para tornar o parâmetro mutável.
+
+ O atributo '[Out]' só tem suporte em parâmetros de matriz e parâmetros nos quais foi realizado marshaling por fixação. Considere usar as palavras-chave 'out' ou 'ref' para tornar o parâmetro mutável.
@@ -917,11 +907,6 @@
O tipo '{0}' especifica que ele dá suporte a marshalling na direção 'Out', mas não fornece um método 'ToManaged' que retorna o tipo gerenciado
-
-
- Foi realizado marshaling nesse parâmetro por fixação e ele é '[In, Out]' por padrão.
-
- "GeneratedComInterfaceAttribute" e "GeneratedComClassAttribute" exigem código não seguro. O projeto deve ser atualizado com "<AllowUnsafeBlocks>true</AllowUnsafeBlocks>".
@@ -1162,11 +1147,6 @@
'{0}' tem acessibilidade '{1}'.
-
-
- Os atributos '[In]' e '[Out]' não têm suporte neste tipo.
-
- O tipo não gerenciado para um marshaller personalizado deve ser um tipo não gerenciado C#.
@@ -1234,9 +1214,9 @@
O tipo especificado não tem suporte de P/Invokes gerados pela origem.
-
+
- Um COM gerado pela origem não dá suporte ao tipo especificado.
+ Specified type is not supported by source-generated COM
diff --git a/src/libraries/System.Runtime.InteropServices/gen/Common/Resources/xlf/Strings.ru.xlf b/src/libraries/System.Runtime.InteropServices/gen/Common/Resources/xlf/Strings.ru.xlf
index 5bcb3d31ebae0..0b08eabfaa0c6 100644
--- a/src/libraries/System.Runtime.InteropServices/gen/Common/Resources/xlf/Strings.ru.xlf
+++ b/src/libraries/System.Runtime.InteropServices/gen/Common/Resources/xlf/Strings.ru.xlf
@@ -447,11 +447,6 @@
Атрибут "[In]" необязателен, если только не используется атрибут "[Out]". Поведение атрибута "[In]" без "[Out]" совпадает с поведением по умолчанию.
-
-
- Этот параметр маршалируется путем закрепления и не поддерживает атрибут "[In]" без атрибута "[Out]".
-
- Атрибуты \"[In]\" и \"[Out]\" не поддерживаются для параметров, передаваемых по ссылке. Используйте вместо них ключевые слова \"in\", \"ref\" или \"out\".
@@ -467,11 +462,6 @@
Атрибуты [In] и [Out]
-
-
- Ключевое слово "in" не поддерживается для параметров, маршалируемых путем закрепления. Вместо этого используйте "ref" или "out".
-
- События не являются концепцией в COM, поэтому источник не будет генерировать код взаимодействия для событий экземпляра в COM-интерфейсах, создаваемых источником.
@@ -903,8 +893,8 @@
-
- Атрибут "[Out]" поддерживается только для параметров массива и параметров, маршалированных путем закрепления. Рассмотрите возможность использования ключевых слов "out" или "ref", чтобы сделать параметр изменяемым.
+
+ Атрибут "[Out]" поддерживается только для параметров массива и параметров, маршалированных путем закрепления. Рассмотрите возможность использования ключевых слов "out" или "ref", чтобы сделать параметр изменяемым.
@@ -917,11 +907,6 @@
Тип \"{0}\" указывает, что поддерживает маршализацию в направлении \"наружу\", но не предоставляет метод \"ToManaged\", который возвращает управляемый тип
-
-
- Этот параметр маршалируется путем закрепления и по умолчанию имеет значение [In, Out].
-
- Для "GeneratedComInterfaceAttribute" и "GeneratedComClassAttribute" требуется небезопасный код. Проект необходимо обновить с использованием значения "<AllowUnsafeBlocks>true</AllowUnsafeBlocks>".
@@ -1162,11 +1147,6 @@
"{0}" обеспечивает уровень доступности "{1}".
-
-
- Атрибуты "[In]" и "[Out]" не поддерживаются для этого типа.
-
- Неуправляемый тип для пользовательского маршаллера должен быть неуправляемым типом C#.
@@ -1234,9 +1214,9 @@
Указанный тип не поддерживается в P/Invoke с созданием источника.
-
+
- Указанный тип не поддерживается моделью COM генератора исходного кода.
+ Specified type is not supported by source-generated COM
diff --git a/src/libraries/System.Runtime.InteropServices/gen/Common/Resources/xlf/Strings.tr.xlf b/src/libraries/System.Runtime.InteropServices/gen/Common/Resources/xlf/Strings.tr.xlf
index b9e3a106e9537..4a89f73144810 100644
--- a/src/libraries/System.Runtime.InteropServices/gen/Common/Resources/xlf/Strings.tr.xlf
+++ b/src/libraries/System.Runtime.InteropServices/gen/Common/Resources/xlf/Strings.tr.xlf
@@ -447,11 +447,6 @@
'[Out]' özniteliği de kullanılmadığı sürece '[In]' özniteliği gerekli değildir. '[Out]' özniteliği kullanılmadığında '[In]' özniteliğinin davranışı varsayılan davranışla aynı olacaktır.
-
-
- Bu parametre sabitlenerek hazırlanır ve '[Out]' özniteliği olmadan '[In]' özniteliğini desteklemez.
-
- '[In]' ve '[Out]' öznitelikleri başvuruya göre aktarılan parametrelerde desteklenmiyor. Bunun yerine 'in', 'ref' veya 'out' anahtar sözcüklerini kullanın.
@@ -467,11 +462,6 @@
[In] ve [Out] öznitelikleri
-
-
- 'in' anahtar sözcüğü sabitlenerek hazırlanan parametrelerde desteklenmez. Bunun yerine 'ref' veya 'out' kullanın.
-
- Olaylar COM'da kavram olarak değerlendirilmez, bu nedenle kaynak tarafından oluşturulan COM arabirimleri üzerinde örnek olaylar için birlikte çalışma kodu oluşturulmaz.
@@ -903,8 +893,8 @@
-
- '[Out]' özniteliği yalnızca dizi parametrelerinde ve sabitlenerek hazırlanan parametrelerde desteklenir. Parametreyi değiştirilebilir yapmak için 'out' veya 'ref' anahtar sözcükleri kullanmayı düşünün.
+
+ '[Out]' özniteliği yalnızca dizi parametrelerinde ve sabitlenerek hazırlanan parametrelerde desteklenir. Parametreyi değiştirilebilir yapmak için 'out' veya 'ref' anahtar sözcükleri kullanmayı düşünün.
@@ -917,11 +907,6 @@
'{0}' türü, 'Out' yönünde sıralamayı desteklediğini belirtiyor, ancak yönetilen türü döndüren bir 'ToManaged' metodu sağlamıyor
-
-
- Bu parametre sabitlenerek hazırlanır ve varsayılan olarak '[In, Out]' olur.
-
- 'GeneratedComInterfaceAttribute' ve 'GeneratedComClassAttribute' güvenli olmayan kod gerektiriyor. Projenin '<AllowUnsafeBlocks>true</AllowUnsafeBlocks>' ile güncelleştirilmiş olması gerekiyor.
@@ -1162,11 +1147,6 @@
'{0}', '{1}' erişilebilirlik özelliğine sahip.
-
-
- '[In]' ve '[Out]' öznitelikleri bu türde desteklenmiyor.
-
- Özel sıralayıcının yönetilmeyen türü, C# yönetilmeyen bir tür olmalıdır.
@@ -1234,9 +1214,9 @@
Belirtilen tür, kaynak tarafından oluşturulan P/Invokes tarafından desteklenmiyor
-
+
- Belirtilen tür, kaynak tarafından oluşturulan COM tarafından desteklenmiyor
+ Specified type is not supported by source-generated COM
diff --git a/src/libraries/System.Runtime.InteropServices/gen/Common/Resources/xlf/Strings.zh-Hans.xlf b/src/libraries/System.Runtime.InteropServices/gen/Common/Resources/xlf/Strings.zh-Hans.xlf
index 5c452bbf91561..60cac07d312d8 100644
--- a/src/libraries/System.Runtime.InteropServices/gen/Common/Resources/xlf/Strings.zh-Hans.xlf
+++ b/src/libraries/System.Runtime.InteropServices/gen/Common/Resources/xlf/Strings.zh-Hans.xlf
@@ -447,11 +447,6 @@
不需要 “[In]” 属性,除非同时使用 “[Out]” 属性。没有 “[Out]” 属性的情况下,“[In]” 属性的行为与默认行为相同。
-
-
- 此参数通过固定进行封送,不支持没有“[Out]”属性的“[In]”属性。
-
- 引用传递的参数不支持 “[In]” 和 “[Out]” 属性。请改用 “in”、“ref” 或 “out” 关键字。
@@ -467,11 +462,6 @@
[In] 和 [Out] 属性
-
-
- 通过固定封送的参数不支持“in”关键字。请改用“ref”或“out”。
-
- 事件不是 COM 的概念,因此不会为源生成的 COM 接口上的实例事件生成互操作代码。
@@ -903,8 +893,8 @@
-
- `[Out]` 属性仅在数组参数和通过固定封送的参数上受支持。请考虑使用“out”或“ref”关键字使参数可变。
+
+ `[Out]` 属性仅在数组参数和通过固定封送的参数上受支持。请考虑使用“out”或“ref”关键字使参数可变。
@@ -917,11 +907,6 @@
类型“{0}”指定它支持按 “Out” 方向进行封送,但不提供返回托管类型的 “ToManaged” 方法
-
-
- 此参数通过固定进行封送,默认情况下为“[In, Out]”。
-
- “GeneratedComInterfaceAttribute”和“GeneratedComClassAttribute”需要不安全代码。必须将项目更新为“<AllowUnsafeBlocks>true</AllowUnsafeBlocks>”。
@@ -1162,11 +1147,6 @@
“{0}”具有可访问性“{1}”。
-
-
- 此类型不支持“[In]”和“[Out]”特性。
-
- 自定义封送程序的非托管类型必须为 C# 非托管类型。
@@ -1234,9 +1214,9 @@
源生成的 P/Invoke 不支持指定的类型
-
+
- 源生成的 COM 不支持指定的类型
+ Specified type is not supported by source-generated COM
diff --git a/src/libraries/System.Runtime.InteropServices/gen/Common/Resources/xlf/Strings.zh-Hant.xlf b/src/libraries/System.Runtime.InteropServices/gen/Common/Resources/xlf/Strings.zh-Hant.xlf
index 8a8dd483eaab6..53c820a8e0a77 100644
--- a/src/libraries/System.Runtime.InteropServices/gen/Common/Resources/xlf/Strings.zh-Hant.xlf
+++ b/src/libraries/System.Runtime.InteropServices/gen/Common/Resources/xlf/Strings.zh-Hant.xlf
@@ -447,11 +447,6 @@
除非一併使用'[Out]'屬性,否則'[In]'屬性為非必要。沒有'[Out]'屬性的'[In]'屬性行為與默認行為相同。
-
-
- 此參數是由釘選排列,不支援沒有 '[Out]' 屬性的 '[In]' 屬性。
-
- 參考所傳遞的參數不支援'[In]'和'[Out]'屬性。請改用 'in'、'ref' 或 'out' 關鍵詞。
@@ -467,11 +462,6 @@
[In] 與 [Out] 屬性
-
-
- 依釘選封送處理的參數不支援 'in' 關鍵字。請改為使用 'ref' 或 'out'。
-
- 事件不是 COM 中的概念,因此不會為來源產生的 COM 介面上的執行個體事件來源產生 Interop 程式碼。
@@ -903,8 +893,8 @@
-
- 只有在依釘選排列的陣列參數和參數上,才支援 '[Out]' 屬性。請考慮使用 'out' 或 'ref' 關鍵字將參數設為可變。
+
+ 只有在依釘選排列的陣列參數和參數上,才支援 '[Out]' 屬性。請考慮使用 'out' 或 'ref' 關鍵字將參數設為可變。
@@ -917,11 +907,6 @@
類型 '{0}' 指定它支援以 'Out' 方向排列,但未提供傳回受管理類型的 'ToManaged' 方法
-
-
- 此參數依釘選排列,預設為 '[In, Out]'。
-
- 'GeneratedComInterfaceAttribute' 和 'GeneratedComClassAttribute' 需要不安全的程式碼。專案必須以 '<AllowUnsafeBlocks>true</AllowUnsafeBlocks>' 更新。
@@ -1162,11 +1147,6 @@
'{0}' 具有存取範圍 '{1}'。
-
-
- 此類型不支援 '[In]' 和 '[Out]' 屬性。
-
- 自訂封送處理程式的未受控類型必須是 C# 未受控類型。
@@ -1234,9 +1214,9 @@
来源產生的 P/Invokes 不支援指定的類型。
-
+
- 来源產生的 COM 不支援指定的類型。
+ Specified type is not supported by source-generated COM
diff --git a/src/libraries/System.Runtime.InteropServices/tests/ComInterfaceGenerator.Unit.Tests/CompileFails.cs b/src/libraries/System.Runtime.InteropServices/tests/ComInterfaceGenerator.Unit.Tests/CompileFails.cs
index ee765a1d394b8..a770ffffb0a40 100644
--- a/src/libraries/System.Runtime.InteropServices/tests/ComInterfaceGenerator.Unit.Tests/CompileFails.cs
+++ b/src/libraries/System.Runtime.InteropServices/tests/ComInterfaceGenerator.Unit.Tests/CompileFails.cs
@@ -742,9 +742,7 @@ public static IEnumerable