VBプログラマ質問スレ(6.0以前) Part42
■ このスレッドは過去ログ倉庫に格納されています
0086デフォルトの名無しさん
2005/06/05(日) 06:25:54名前付き引数を取得する方法を教えてください。
複数のファイルをD&Dしてそれを分ける方法としては
Split関数での分割が思いつきますが、パスに半角スペースがある場合に困ります。
引数が全て"で囲われてれば""" """でSplitすることも出来るのですが、
「c:\hoge.txt」と「c:\hoge hoge.txt」という二つのファイルを渡した場合、
Command関数は「c:\hoge.txt "c:\hoge hoge.txt"」という値を返すので
" "で分割しても""" """で分割してもうまくいきません。
一応文字列操作で対応させる方法は思いついたのですが、
vbsでwshのArgumentsプロパティを使ったときのように操作出来ないのでしょうか?
もう一つ、名前付き引数(コマンドラインスイッチ)なのですが、「-a=hoge」とか「/a:hoge」などの引数を渡した場合、
aスイッチの有無、及びその要素値"hoge"を得るにはどうすれば良いのでしょうか?
これもwshのプロパティでは
Wscript.Arguments.Named.Exists("a")でaスイッチの有無、
Wscript.Arguments.Named("a")でaスイッチの値である"hoge"
Wscript.Arguments.Unnamedで名前無し引数を返せますが、
これをVBでやるにはどうすれば良いのでしょうか?
こちらも地道に文字列操作で条件判断させるしかないのですか?
最近VB使い始めたのですが、ExcelVBAやvbsを使っていたので文字列操作含め
VBAにあるものは大体わかるのですが、ExcelVBAには起動時引数という概念が無いので
引数の扱いで躓いています。
環境はWindowsXPsp1、Visual Basic6.0sp5です。
■ このスレッドは過去ログ倉庫に格納されています