コマンドライン引数を取得後の自動処理

解決


ガウン  2008-08-11 08:32:59  No: 145062  IP: 192.*.*.*

makeIchiran() は、一覧表を作成するサブプロシージャで、
動作確認は済んでいます。
現在、下記のようにしてコマンドライン引数を取得して、
動作させようとしていますが、1,2、1,2,1・・を繰り返し処理し、
その後、フォーム上のグリッド部分で下記エラーを発生します。

「ウィンドウのハンドルを作成中にエラーが発生しました。」

        Dim cmds() As String
        cmds = System.Environment.GetCommandLineArgs()
        If UBound(cmds) = 1 Then
            If cmds(1) = "AUTO" Then
                Dim a As frmSAM0010
                a = New frmSAM0010  '←1
                a.Show()            '←2
                makeIchiran()
                a.Close()
                a.Dispose()
                a = Nothing
                Exit Sub
            End If
        End If

よく原因が掴めていないのですが、何か分かりますでしょうか。
環境は、VB.NET2003、WinXPです。

編集 削除
特攻隊長まるるう  2008-08-11 10:12:26  No: 145063  IP: 192.*.*.*

>1,2、1,2,1・・を繰り返し処理し、
このコードを frmSAM0010 の Sub New() か Form.Load に
書いてるなら当然の結果です。

編集 削除
ガウン  2008-08-11 17:30:24  No: 145064  IP: 192.*.*.*

Dim cmds() As String
        cmds = System.Environment.GetCommandLineArgs()
        If UBound(cmds) = 1 Then
            If cmds(1) = "AUTO" Then
                Me.makeIchiran()
                Exit Sub
            End If
        End If

上記のように修正し動くようになりました。
新規にフォームを開いてfrm_Loadを実行するために、
繰り返し新規のフォームを開こうとしていた・・ということですね。

ありがとうございました。

編集 削除