コマンドラインでプログラムを開くときに、複数の名前付きパラメータを受け入れる機能をプログラムに追加する必要があります。すなわち複数の名前付きコマンドラインパラメータを解析する
program.exe /param1=value /param2=value
となり、これらのパラメータをプログラムの変数として利用できるようになります。私はこれを達成するためにいくつかの方法を見つけましたが、それをすべて一緒にする方法を理解できていないようです。
以下のコードを使用して名前付きパラメータを1つ渡してリカバリすることができました。可能なすべての名前付きパラメータに対して複製することができましたが、これを行う方法としてはあてはまらないことがわかりました。
Dim inputArgument As String = "/input="
Dim inputName As String = ""
For Each s As String In My.Application.CommandLineArgs
If s.ToLower.StartsWith(inputArgument) Then
inputName = s.Remove(0, inputArgument.Length)
End If
Next
代わりに、私は
My.Application.CommandLineArgs
を使用して、コマンドラインから複数の無名のパラメータを取得することができます。しかし、これはパラメータのすべてが同じ順序/形式で毎回渡されている必要があります。私は毎回パラメータのランダムなサブセットを渡すことができる必要があります。
最終的に、私ができることを望むのは、各引数と値を分けて、後で使用するために多次元配列にロードすることです。私は、 "="で文字列を区切り、 "/"を取り除くことでこれを行う方法を見つけることができることを知っていますが、私はこれにいくぶん新しいですから、 "preffered"複数の名前付きパラメータを使用しますか?
これはまさに私が探していたものです。そして、私は実際にどのような入力形式が使われているか気にしません...私はまだ何も配布していません。クイックヘルプに感謝します。 – scholzr