パス名の後にある / の意味は?


α  2001-08-25 18:00:58  No: 74804  IP: [192.*.*.*]

レジストリのHKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\run
にある値でこのような物があります。
C:\WINDOWS\scanregw.exe /autorun
パス名の後にスラッシュをつけることは何を意味するのでしょうか。
その状態をVisual Basicでできるのでしょうか。

編集 削除
たかみちえ  2001-08-25 19:52:13  No: 74805  IP: [192.*.*.*]

あれはオプション文字列を示します。
その前に"がありますよね?
"で区切った先は、コマンド文字列で、command関数で、
関連付けでコマンドラインに入ってきたファイルパスといっしょに、えることが出来ます。
(その場合、半角スペースで区切ってあるみたいですね)
だから、/autorunとあれば、scanregw.exe に/autorunという文字列を渡したってことになります。
scanregwは/autorunに"自動実行"を割り当ててるので、つまり自動実行するんです。

…で、VBでやるには、command関数でコマンドラインを取得します。
そのソフトがファイルに関連付けられてれば、
ふつう、"C:\scanlog.txt"とかが入って来ます(ほんとはショートパスなんですけど、そういう突っ込みはなしですおねがいしますね^^;)
で、そのパスを読みこんで、関連付けで開けるわけです。

  上のようなオプションをえるには、そこからスペースのあとの文字(といっても、"のそとなどとという条件付)の文字を得ます。
それで、if opt="/log" thenというわけです。
(ただし、Windows98とそれ以降ではコマンドライン文字の書き方が違うみたいです)
あと、オプション文字列は何でもいいです。
MicroSoftで作ったソフトって、だいたい/が先頭につきますけど、
別に*でも+でも、まあだいたい記号が先頭につきますけど何でもいいです。

  ちなみに、そういうパスでの実行の仕方ですけど、
Shellとかのパス名に、Pathname" *autoとかかきます。
まずはコマンドラインオプションのあるソフトで雰囲気をとらえておくと分かりやすいです。
(この掲示板、書くエリアが短すぎて書きづらいよぉ…)

編集 削除
こころ  URL  2001-08-27 22:16:53  No: 74806  IP: [192.*.*.*]

コマンドライン文字列にはドラッグ&ドロップされたファイル名等が
くる場合もあるので、オプション文字列との識別用に
ファイル名に使うことのできない
記号を先頭に持ってきているのでしょう。

編集 削除
α  2001-08-28 16:07:34  No: 74807  IP: [192.*.*.*]

なるほど。そういうためにあったんですね。
有難う御座いました。

編集 削除