• ベストアンサー

バッチファイルについて・・・

バッチファイルというのはVBから操作できないのですか? Shellを使っているのですが、うまくいきません。 バッチファイルをダブルクリックするとうまくいくのです。。。

質問者が選んだベストアンサー

  • ベストアンサー
  • BlueRay
  • ベストアンサー率45% (204/453)
回答No.5

>最初、My Docにフォルダを置いてやっていたのですが が気になったので少しばかり。 フルパスにしているのですよね。 パスにスペースが含まれると引数として認識してしまうと思いますので、 パスと起動するファイルを含めて""で囲ってみてください。 例: C:\My Documents\hoge.txt ↓ "C:\My Documents\hoge.txt" 可能性の一つですので、解決できなかったらすいません。

hiro6295
質問者

お礼

回答ありがとうございましたm(_ _)m 参考にさせていただきます。

その他の回答 (5)

  • BlueRay
  • ベストアンサー率45% (204/453)
回答No.6

結果がどうなっているのかが良くわからないですが、 以下のようにしてみてはどうでしょうか。 Shell "command.com /c C:\My Documents\hoge.bat", vbNormalFocus これでも、駄目ならShellExecute APIを使用してみては如何でしょう。 結果的には変わらない気もしますが・・・。

hiro6295
質問者

お礼

回答ありがとうございました。 参考にさせていただきます。

  • sienna
  • ベストアンサー率35% (51/145)
回答No.4

ファイル名の大文字・小文字/全角・半角は大丈夫ですか? どのような名前のバッチファイルか差し支えなければ 書いた方が良いのではないでしょうか。

hiro6295
質問者

お礼

解決いたしましたので。ありがとうございました。

hiro6295
質問者

補足

それは大丈夫でした。 バッチファイル名はまだ試作なので、hiromi.batです・・・。

  • gould09
  • ベストアンサー率33% (196/589)
回答No.3

パスはFULLパスを使っていますか? App.Path+相対パスを使っていますか? また、VBはEXEから実行していますか?それともvbpで実行していますか? EXEの場合は、カレントパスがEXEのある場所、vbpの場合にはvbpをインストールしている場所になる為、相対パスを使っている時には注意が必要です。

hiro6295
質問者

お礼

パスの設定が甘かったようです。 ありがとうございました。

hiro6295
質問者

補足

最初、My Docにフォルダを置いてやっていたのですが、Cフォルダごと移してパスもC:¥~で書いてるのですが。。。 App.Pathは使用していません。 実行はvbpからです。

  • maruru01
  • ベストアンサー率51% (1179/2272)
回答No.2

こんにちは。maruru01です。 うまくいかないとは、何かエラーが出るということですか? まさか、パスが間違っている、Pathの末尾に"\"が抜けているなんてことはないですよね。 では。

hiro6295
質問者

補足

ま、まさか・・・。一度”¥”がなくてエラー出ましたけど、今は直ってます!!!

  • be-be
  • ベストアンサー率16% (2/12)
回答No.1

私もバッチファイルを起動していますが Shell(バッチファイル名) バッチファイル名:SEND.BAT できどうしていますよ

hiro6295
質問者

お礼

ちょっと違うやり方ですが、完成しました。ありがとございました。

hiro6295
質問者

補足

Shellの後はバッチファイルの入っているパスが入って、その後にファイル名となっているのです・・・↓ Shell Path & "ファイル名.bat"なんですが。

関連するQ&A

  • Shell関数からバッチファイルを起動後に、バッチファイルが終了するまで待ちたい。

    はじめまして。 掲題の通り、VB.netからshell関数を用いてバッチファイルを起動します。 その後、そのバッチファイルが終了してログファイルの出力を完了した後に、 ファイルを開いて確認したいのです。 thread.sleepなどで大体このくらいかなという時間を待ってみる、 などのやり方しか今は思いつかないのですが、 何か明確にバッチファイルの終了を受け取れる方法は無いものでしょうか。 どなたかご存知の方がいらっしゃいましたらご教授ください。

  • バッチファイルで実行がうまくできない(java)

    バッチファイルを作成してダブルクリックでコンパイル、実行できるようにしたいのですが、うまくいきません。 midiを演奏するプログラムをバッチファイルをダブルクリックして実行しようとすると Exception in thread "main" java.lang.NoSuchMethodError: main と出てしまいます。 コマンドプロンプトで set classpath=%classpath%;. と最初に入力していますし、別のソースをバッチファイルをダブルクリックすることによって実行することはできていますので、なにが原因かわかりません。 考えられる原因と、どうすればバッチファイルをダブルクリックすることによってコンパイル、実行できるかを教えてください。 お願いします。

  • バッチファイルを1個だけしか起動しないようにしたい

    エクスプローラー上から バッチファイル(test.bat)を ダブルクリックしてバッチファイルを実行しています。 通常はコマンドプロンプトが1個だけ表示されて、 バッチファイルが実行して実行が終了すると コマンドプロンプトも閉じられます。 しかし、時々、 コマンドプロンプトが2個表示されることがあります。 つまり、ダブルクリックが、 1回ではなく2回実行されたと誤認識されて、 同じバッチファイル(test.bat)が 2つ起動してしまったと思われます。 当然、その後の処理はおかしくなります。 (バッチファイル(test.bat)の中に 何らかのコードを追加するなどして) 必ず1個だけしか起動しないようにすることは、 できないでしょうか。 (Windows10)

  • バッチファイルについて

    バッチファイル(.bat)について不明な点が ありますので、詳しく方ご教授お願い致します。 コマンドプロンプトを開き、対象のバッチファイルを ドラッグアンドドロップし、実行すると正常通りの結果が 得られました。 ただ、バッチファイルをダブルクリックし、実行すると 実行されません。 原因を詳しい方、ご教授お願い致します。

  • 外部ファイルを実行するには?

    お世話になります。 vb6で外部のバッチファイルを起動して、それを動作させようとしているのですが、うまくいきません。特にエラーにはならず、一瞬DOSプロントは立ち上がるんですが、バッチ処理しているログにはなにも書き込まれません。普通にバッチファイルをダブルクリックさせるか、コマンドからバッチファイルの入っているフォルダまでいって、バッチファイルを実行すれば書き込まれるのですが。 どこがまちがっているのでしょうか?shellじゃなくて、違う関数を使わなければいけないのでしょうか?ご教授よろしくお願いします。 なお、vb6でテストするときは▸マークの実行を押して、テストしました。 サンプル用のものです。 ↓test 現在の時間をログに記入 ■バッチファイルの中身(test.bat) echo test >> log.txt time/t >> log.txt ■vb6のファイルの中身 Private Sub Command1_Click() Dim ret as long ret = shell("cmd.exe /c C:\test\test.bat",4) End Sub

  • win2008r2 バッチファイル起動しない

    バッチファイルの実行に関して、質問させてください。 現在作成したバッチファイルをWindows7上でうまく動きます(コマンドプロプトン、ダブルクリック、スケジューラ)が、windows 2008R2(AD機能)で起動しないです。コマンドプロプトンで【test.bat】Enterキー押すと”操作可能なプログラムまたはバッチ ファイルとして認識されていません”というメッセージが出ます。環境変数のPATHTEXTに".BAT"の記述はあります。スケジューラで実行されるみたいですが、リターンコードは1で、バッチファイルの内容は実行されていないようです。ダブルクリックしても、ほしい結果がでません。結構困っています。解決方法があれば、ご教授ください。

  • バッチファイルについて

    こんばんは 仕事の際のちょっとした工夫として、バッチファイルを作ってみました。 今はいちいちファイルをダブルクリックで実行しているのですが、バッチファイルショートカットを作成するとショートカットキーを割り当てることができることに気づきました。 そこで、早速ショートカットキーを割り当てたのですが、なぜか反応しません。 一応バッチファイルのショートカットをデスクトップに保存するとできるようなのですが、デスクトップ上にはアイコンが多すぎて収集がつかない状況のため、例えばDドライブ直下にバッチファイルを置いたままショートカットキーで起動できるようにしたいのです。 どうやったらいつでもショートカットキー一発で実行できるようになるのでしょうか? ご存知の方がいらっしゃいましたら、ご教示いただきたく思います。 よろしくお願いいたします。

  • バッチファイルで電卓

    DOS窓に1+1と入力すると2と表示されるような,バッチファイルを考えています。バッチファイルではなくコマンドプロンプト上で「SET /A 1+1」と入力する方法なら分かりますが,これを応用できないでしょうか。ただし,バッチファイルはコマンドプロンプトからではなくアイコンをダブルクリックして起動させるものとします。

  • iniファイルを呼ぶバッチファイルの実行

    VB2008でProcess.Startを使ってバッチファイルを実行する プログラムを作成しました。 バッチファイルではini.batという変数に値を設定するファイルを 最初にcallしています。 しかし設定されずにエラーになってしまいます。 どうしたらうまく動くのでしょうか。 バッチファイルをクリックで実行すると正常に動作します。

  • バッチファイルを起動したけど、win98では引数が長すぎて。。。

    VBからバッチファイルを起動する処理を作成中です。 SHELL コマンドで実行しているのですが、 そのバッチファイルの引数がすごく長いのです。 >batch.bat "引数1" "引数2" "引数3" とする際、引数1 ~ 引数3までの合計文字列が 128?byte を超えてしまい、 win98では、使えないプログラムがあります。 複数の引数をまとめたファイルを、バッチファイルの 引数として起動させる等、 回避作はあるのでしょうか? 教えてください。

専門家に質問してみよう