• 締切済み

VBSでコマンドプロンプトのカレントディレクトリを操作できますか?

どうにも行き詰まってしまったので質問させてください。 Windows2000なんですけど、コマンドプロンプトを開くと C:\Documents and Settings\Administrator> となっています。 cd c:\xxx\yyyと入力するとカレントディレクトリを変更することが出来ますが、VBSで同じようにしたい場合は、どのように書いたらいいのでしょうか?

みんなの回答

回答No.5

詳細が分からないのでなんですが スクリプトをカレントディレクトリを変えるところで二つに分けることができるなら、バッチファイルを利用するって手もありますが。 バッチファイル start /wait cscript xxxxx1 cd c:\xxx\yyy start /wait cscript xxxxx2

  • notnot
  • ベストアンサー率47% (4847/10260)
回答No.4

#1です。 >Win2000でコマンドラインを使用してプリンタをインストールする機能があるので使用していますが WinFAQに載っている Rundll32 printui.dll,PrintUIEntry を使った方法ですか? それとも、 >コマンドプロンプトでプリンタのインストールを実行するときに、カレントディレクトリを変更してから、入力する箇所があります。 プリンタにインストール用バッチが付いていて、それを使おうとしているのでしょうか? もしそうなら、その手順を書いてみてください。ユーザー操作無しの自動化くらい出来そうに思いますけど。

332dokin
質問者

補足

WinFAQに載っている Rundll32 printui.dll,PrintUIEntry を使った方法です。 手順を書きました。 1.ネットワークドライブの割り当て(P)  ネットワーク上のファイルサーバーにプリンタドライバのinfファイルがあるため 2.PrinterAdmin のコピー  ネットワーク上のファイルサーバーにあるnetmgmtフォルダを自分のCドライブにコピー 3.PrinterAdmin のインストール  regsvr32 C:work\netmgmt\prnadmin.dll 4.プリンタIPアドレスの設定 cscript C:work\netmgmt\Portmgr.vbs -a -p IP_192.168.1.1 -t lpr -h 192.168.1.1 5.プリンタの追加  rundll32 printui.dll,PrintUIEntry /if /b test LBP3800 /f P:\My Documents\work\AddPrinter\win2k_xp\v10.61\CNL40J.INF /r IP_192.168.1.1 /m Canon LBP3800 LIPS コマンドプロンプトでは、4の時点でカレントディレクトリをC:work\netmgmtで変更してから実行しています。 VBSでは、カレントディレクトリの変更をしなくてもポートは作成されているようです。 実際に、プリンタのポートを見ると表示はされています。 しかし、5では、「プリンタ rundll コマンドに失敗しました。」と出ます。 パスにスペースが入っているからかと思い、色々ダブルクォーテーションを付けたりしましたが、ダメでした。 netmgmtフォルダをc:\winnt\system32へコピーもしてみましたがNGでした。 何かいい方法はありますでしょうか?

回答No.3

#2への追記です。 そうそうWindows2000だったら標準で入っているWSHは2.0でした。こちらでWSH 5.6が配布されています。 http://www.asia.microsoft.com/japan/msdn/scripting/

参考URL:
http://www.asia.microsoft.com/japan/msdn/scripting/
回答No.2

WSH 5.6ではWshShellオブジェクトのCurrentDirectoryプロパティを操作することでカレントディレクトリを変更できます。(WSH 5.6で追加された機能) Set WshShell = WScript.CreateObject("WScript.Shell") WshShell.CurrentDirectory = "c:\xxx\yyy" ただし、あくまでもスクリプト実行時のカレントディレクトリを変更するためのものです。

332dokin
質問者

お礼

これはWSH5.6の機能なんですね。 Win2000でコマンドラインを使用してプリンタをインストールする機能があるので使用していますが、今後はユーザーにも各自で実行してもらおうと思っていました。 各ユーザーパソコンにインストールとなると、ん・・・厳しいです。 標準のWSH2.0でも使えればいいのになぁ・・・。

  • notnot
  • ベストアンサー率47% (4847/10260)
回答No.1

VBやVBAにはchdir命令がありますが、VBSにはそういう機能は無いようです。少なくともリファレンスには載ってません。 また、もし質問が、コマンドプロンプトからVBSスクリプトを実行して、実行終了後にコマンドプロンプトのカレントディレクトリが変わっているようなことが出来るかと言う意味なら、仮にVBSにchdir機能があっても不可能です。(VBS実行が別プロセスになるため)

332dokin
質問者

お礼

VBSでは無理ですか・・・。 Win2000でコマンドラインを使用してプリンタをインストールする機能があるので使用していますが、今後はユーザーにも各自で実行してもらおうと思っていました。 コマンドプロンプトなど使ったことのないエンドユーザーのため、コマンドプロンプトを操作するとか、カレントディレクトリを変更してもらうのは無理かと思い、VBSでoneクリックで実行できないかと模索していたのです。 コマンドプロンプトでプリンタのインストールを実行するときに、カレントディレクトリを変更してから、入力する箇所があります。 VBSで同様のことを実行したら、エラーが出てしまいました。 コマンドプロンプトのカレントディレクトリ表示を変えるというより、VBSでプリンタのインストール操作が出来ればいいのです。 VBSも始めたばっかりなのですが、コマンドプロンプトでカレントディクレクトリを変更してから実行するものに対して、VBSで記述する何か別の方法があるのでしょうか?

関連するQ&A

  • コマンドプロンプトについて

    コマンドプロンプトを起動させたときカレントディレクトリが C:>となっているのですが、これを C\Documents and Settings\xxxxx\My Document:>としてコマンドプロンプトを再起動したときにここに初めからカレントディレクトリとして設定したいのですがどうすれば出来るでしょうか。 教えてください

  • コマンドプロンプトで別のドライブへ行くには?

    WindowsXPを使っております。 コマンドプロンプトを開くと、 C:\Documents and Settings\Administrator> と表示されています。 それで、カレントディレクトリの位置を 例えばD:\>のように別のドライブにしたいのですが、 どうしても分かりません。 どうすればよいかご存知の方いらっしゃいましたら ご教示願います。

  • デフォルトのカレントディレクトリ

    WindowsXP HomeEdition SP2です。 コマンドプロンプトを開いた時の初期状態のカレントディレクトリを変える方法はありますでしょうか? 現状ではコマンドプロンプトを開くと"C:\Documents and Settings\ユーザー名"がカレントディレクトリになっています。 しかし実際問題としてこのディレクトリで作業することはなく、毎回移動するのは手間がかかるので、コマンドプロンプトを開いた時のカレントディレクトリを何か別の物に変えたいと思います。 方法が分かる方がいましたらよろしくお願いいたします。

  • コマンドプロンプトでのカレントディレクトリについて。

    WinXPでコマンドプロンプトを使っているんですが、カレントディレクトリを移動する時、cd c:\Program Files ってやりますよね。 Dドライブのlibというフォルダにカレントディレクトリを移したいんですが、cd D:\libとしても、なんの応答もなく元のプロンプト画面のままです。 Dドライブにカレントディレクトリを移動させるというのは、そもそも出来ないものなんですか? 誰か知っている人がいたら教えて下さい。宜しくお願いします。

  • VBSでコマンドプロンプトのカレントディレクトリ

    VBscriptでコマンドプロンプトを立ち上げてカレントディレクトリするプログラムを作っています。 でもどうしてもカレントディレクトリが出来ていないようです。 何故なのでしょうか? パスの通ってないプログラムをCMD経由で複数立ち上げたりする際に使いたいと思っています。

  • ディレクトリの変更

    コマンドプロンプトを起動すると、カレントディレクトリは、C:\Documents and Settings\ユーザ名\ となっています。 これをC:\ などにすることは可能でしょうか? cdではなく起動時のものを変えたいのですが、どうすれば良いのでしょうか?

  • DOSコマンドについて

    Windowsのコマンドプロンプトにてカレントディレクトリでのdirコマンドは表示されますが、cd \の後にdir \Documents and Settingsを行うと同じ表示になりません。 どうしてでしょうか? また\ディレクトリから\Documents and Settingsの内容表示する方法はありますか? 回答をお願いします。

  • コマンドプロンプトの操作について

    C言語のソースファイルをコマンドプロンプトでコンパイルしたいのですが、はじめからうまくいきません。 C:Documents and Settings\USER>になってまして、 C:\>にしたいのですが、できません。 cdで実行したのですが同じでした。 今回初めて投稿します。よろしくお願いします。

  • コマンド スペースを含むディレクトリ移動

    コマンドプロンプトでスペースを含むディレクトリへの移動ができません。 プロンプト:cd c:\Documents and Settings のようにスペースがあるディレクトリへの移動方法を教えてください。 ダブルクォーテーションでかこっても無理でした。

  • コマンドプロンプトについて

    WindowsXPのコマンドプロンプトを使おうとすると、 C:\Documents and Settings(以下略)のように表示されてしまいます。 「Documents and Settings~」の部分を消したいのですが、 どのようにすればよいのでしょうか?

専門家に質問してみよう