前提・実現したいこと
下記サンプルコードを使用して、エラー時の分岐処理を行いたい。
発生している問題・エラーメッセージ
Option Strict Onにすることで
iRet = objLbl.lsdForm.FileName(LblFile)
部分でエラーが発生します。
Option Strict Onでは、遅延バインディングを使用できません。
該当のソースコード
Private obj As Object = Nothing ・ ・ ・ obj = CreateObject("xxxxxx.xxx") ・ ・ ・ Dim iRet As Integer iRet = obj.lsdForm.FileName(LblFile) If iRet <> 0 Then SelectForm = -1 Select Case iRet Case -1 : MsgBox("Err1", MsgBoxStyle.OKOnly Or MsgBoxStyle.Critical, "Title") Case -2 : MsgBox("Err2", MsgBoxStyle.OKOnly Or MsgBoxStyle.Critical, "Title") Case -3 : MsgBox("Err3", MsgBoxStyle.OKOnly Or MsgBoxStyle.Critical, "Title") End Select End If
試したこと
lsdFormに対しての型宣言が足りないと思い、下記のように宣言しましたが
状況は変わりません。
Dim lsdForm As System.Object
また、Option Strict Onがない状態で、「lsdForm」の宣言部分をオブジェクトブラウザーで見ると
.NET Framework クラス階層のすべてのクラスをサポートし、派生クラスに下位レベルのサービスを提供します。これは、.NET Framework の全クラスの基本クラスであり、型階層のルートです。
となっていました。
補足情報(FW/ツールのバージョンなど)
VisualStudio2010
VB.NET
![guest](/img/icon/icnUserSample.jpg)
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/11/13 04:22
2018/11/13 07:59
2018/11/13 08:16