変数 '<変数名>' は、値が割り当てられる前に参照によって渡されます。 結果として、実行時に null 参照の例外が発生する可能性があります。 構造体やすべての参照メンバーについて、使用する前に初期化されていることを確認します
変数に何らかの値が割り当てられる前に、プロシージャ呼び出しが ByRef
パラメーターへの引数として構造体変数を渡しています。
構造体変数に値が割り当てられていない場合、各構造体メンバーはそのデータ型の既定値を保持します。 参照データ型の場合、その既定値は Nothingです。 値が Nothing
である参照メンバーを読み取ると、状況によって NullReferenceException が発生する可能性があります。
プロシージャ ByRef
に引数を渡すと、引数の基になる変数がプロシージャによって変更される可能があります。
既定では、このメッセージは警告です。 警告を非表示にする方法や、警告をエラーとして扱う方法の詳細については、「 Configuring Warnings in Visual Basic」を参照してください。
エラー ID: BC42108
このエラーを解決するには
ByRef
引数を通じて構造体のメンバーに値を割り当てるプロシージャを意図しており、メンバーが既に値を保持するかどうかは関係ない場合、処置は必要ありません。プロシージャのロジックが何らかの値を割り当てる前に構造体のメンバーを読み取る場合に、メンバーが値型の場合は、プロシージャのロジックが、メンバーが既定値を持つかどうかどうかに依存しないことを確認します。
プロシージャのロジックが何らかの値を割り当てる前に構造体のメンバーを読み取る場合に、メンバーが参照型の場合は、プロシージャのロジックが、
Nothing
の値を保持できることを確認します。 たとえば、Try...Catch...Finally ステートメントを使用して NullReferenceException をキャッチできます。
関連項目
.NET