人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

【至急】winでの作業の自動化について。
あるファイル(file_a)をダウンロードしたら、関連付けられているA_アプリで処理をして、処理が終わったら変換されたb_fileをB_アプリで開くという処理をしたいと思っています。
(実際にはEDというソフトで暗号化された音声ファイルを、ある復号ソフトで復号し、復号した音声ファイルをWindowsMediaPlayerで再生したいというものです。)

これを自動的にすることはできるのでしょうか?
もし、Aアプリの処理が終わったのを検出することが困難な場合、処理に5秒かかると仮定して「5秒まってから、Bアプリでそのファイルを開く」ということでもかまいません。

できれば、バッチファイルを作って、それを呼び出すだけでAアプリ、Bアプリの処理を自動的にできたらうれしいです。

●質問者: iiiiiiiii
●カテゴリ:インターネット ウェブ制作
✍キーワード:ed WIN アプリ ソフト ダウンロード
○ 状態 :終了
└ 回答数 : 2/2件

▽最新の回答へ

1 ● cutie17
●35ポイント

バッチファイルというかスクリプトを書けば簡単にできると思います。

自分で書けない場合は、他にもこういった自動化ソフトがあります。

http://www.vector.co.jp/vpack/pickup/win/util/operate/index.html

◎質問者からの返答

ありがとうございます。


2 ● llusall
●35ポイント

WSHでのバッチ処理はいかがでしょうか?

以下サンプルです。

hoge.vbs などのファイル名で保存して、ダブルクリックしてください。

Option Explicit

Const URL = "http://localhost/test.txt" '■ここを変える(ダウンロードURL)

Const DEST = "D:\text.txt" '■ここを変える(保存先のパス・ファイル名)

Const adTypeBinary = 1

Const adSaveCreateOverWrite = 2

Dim xmlHttp

Dim stream

Dim WSHSHell

Dim rc

'----------------------------------------------------------

'ダウンロード(あるファイル(file_a)をダウンロード)

'----------------------------------------------------------

Set xmlHttp = WScript.CreateObject("Msxml2.XMLHTTP")

xmlHttp.Open "GET", URL, False

xmlHttp.Send

Set stream = WScript.CreateObject("Adodb.stream")

stream.Type = adTypeBinary

stream.Open

stream.Write xmlHttp.responseBody

stream.Savetofile DEST, adSaveCreateOverWrite

Set stream  = Nothing

Set xmlHttp = Nothing

'----------------------------------------------------------

'実行1(A_アプリで処理)

'----------------------------------------------------------

Set WSHSHell = WScript.CreateObject("WScript.Shell")

rc = WSHShell.Run("notepad.exe D:\text.txt", 1, True) '■ここを変える

If rc = 0 Then

Else

    Set WSHSHell = Nothing

    MsgBox "ERROR1"

    Wscript.Quit '強制終了

End If

'----------------------------------------------------------

'実行2(変換されたb_fileをB_アプリで開く)

'----------------------------------------------------------

rc = WSHShell.Run("""C:\Program Files\Windows Media Player\wmplayer.exe"" C:\WINNT\clock.avi", 1, True) '■ここを変える

If rc = 0 Then

Else

    Set WSHSHell = Nothing

    MsgBox "ERROR2"

    Wscript.Quit '強制終了

End If

Set WSHSHell = Nothing

MsgBox "おしまい"

◎質問者からの返答

大変詳細な回答ありがとうございます。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ