フォルダ名にスペース(空白)が入っている場合


ばなな  2005-09-08 19:47:43  No: 92124

VB6.0(英語版)、WindowsXP(英語版)で開発を行っています。
ファイルの処理についての質問です。
プログラム中でDOSを実行してファイルをコピーしています。

Shell Environ("COMSPEC") & " /C COPY " & File1 & " " & File2

その際に、フォルダ名にスペースが入っている、又はファイル名にスペースが入る場合にうまくコピーされません。
(スペースが無い場合はコピーされます)
なぜでしょうか?
そのような仕様なのですか?

対処法としてはスペースをなくすしかないのでしょうか?

どなたかご教授ください!


いな  2005-09-08 19:54:45  No: 92125

>対処法としてはスペースをなくすしかないのでしょうか?

ごくごく一般的な対処法としてはパス名を"で囲みます。


ガッ  2005-09-08 19:55:22  No: 92126

たとえばコマンドプロントで "C:\Program Files\hoge\hoge.exe" に、
"これは引数です ABC" という引数を渡すときは、
・"C:\Program Files\hoge\hoge.exe" "これは引数です ABC"
とします。
なので、VB側では
Shell Environ("COMSPEC") & " /C COPY """ & File1 & """ """ & File2 & """"
とします。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加