される条件の一部については、次のセクションで説明します。null指定するか、ソース引数によって参照されるオブジェクト型を暗黙的な参照変換によって変換先の型に変換できる必要があります。COR_E_INVALIDCASTが使用されます。実装を直接または間接的に呼び出します。Int32DateTime値に変換Booleanしようとすると、例外がInvalidCastExceptionスローされます。Char.変換はサポートされていないため、回避策はありません。ほとんどの場合、変換がサポートされていないため回避策はありません。場合によっては、回避策としてソースタイプのプロパティ値をターゲットタイプの類似のプロパティに手動で割り当てることが考えられます。縮小演算子は、型でサポートされる明示的な変換を定義します。例外がスローされます。ほとんどの場合、変換がサポートされていないため回避策はありません。ダウンキャストつまり、基本型のインスタンスを派生型のいずれかに変換しようとしています。変換しようとすると失敗します。オブジェクトの派生元の型と同じ型または基底クラスではありません。次の例では、オブジェクトをInvalidCastExceptionオブジェクトに変換しようとしたときに例外をIFormatProviderDateTimeFormatInfoスローします。派生元のクラスに関連していないため、変換は失敗します。オブジェクトが元の型の基本型のインスタンスに変換された場合も、変換は成功します。キャスト演算子を使用して、値またはオブジェクトを文字列表現に変換しようとしています。BasicCStr演算子を使用してプリミティブ型の値を文字列に変換すると成功します。