2

エラーの可能性を回避するために、プロジェクト内のすべての参照が存在するかどうかを確認する必要がありますが、VB.NET でそれを行う方法がどこにも見つかりません。次のようにVBAで実行できます。

Dim vbProj As VBProject
Dim chkRef As Reference

Set vbProj = ThisWorkbook.VBProject

For Each chkRef In vbProj.References
   If chkRef.IsBroken Then
      Debug.Print chkRef.Name " reference doesn't exist!"
   End If
Next

具体的には、プロジェクトは別のプログラム (BarTender) を参照しており、VB を使用してファイルを開いて印刷できるようにする必要があります。

コンピューターにインストールしましたが、Bartender をインストールせずに他の誰かがプロジェクトを実行すると、オブジェクト変数を宣言するときに不明なデータ型の例外がスローされます。

VB.NET でこれを行うにはどうすればよいですか?

4

1 に答える 1

2

有効Option Strict Onにすると、すべての参照が存在しない限り、コードのコンパイルが妨げられるレイト バインディングが防止されます。

上記のリンクから:

暗黙的なデータ型変換を拡大変換のみに制限し、遅延バインディングを禁止し、Object 型になる暗黙的な型指定を許可しません。

また、ソリューション エクスプローラーですべてのファイルをクリックすると、参照セクションが表示されます。横に感嘆符が付いている参照はすべて欠落しています。

于 2013-10-19T21:50:57.967 に答える