WSH についての書き込みです。


起動したWSHスクリプトが、想定されたフォルダにいないとエラーになって作業を中断し終了するようにしたいのです。

具体的には、
\s\ トップフォルダの直下に s というフォルダがあってその中にスクリプトがはいっている前提です。間違ったフォルダの中にスクリプトがいる場合には、警告のポップアップを出して警告して、ポップアップの中にあるボタンをおして、作業を終了するようにするのはどう書けばいいのでしょう。

できる人ならすぐにわかることだと思いますのでよろしくお願いします。

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:
  • 終了:2008/11/12 17:23:45
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

ベストアンサー

id:van-dine No.1

回答回数108ベストアンサー獲得回数11

ポイント60pt

たとえば、C:\s\内で正常、それ以外で異常となるスクリプトは、

Dim FSO
Set FSO = CreateObject("Scripting.FileSystemObject")
If UCase(FSO.GetParentFolderName(WScript.ScriptFullName)) <> UCase("c:\s") Then '★
  WScript.Echo "異常です"
  WScript.Quit
End If
var FSO = new ActiveXObject("Scripting.FileSystemObject");
if(FSO.GetParentFolderName(WScript.ScriptFullName).toUpperCase() != "c:\\s".toUpperCase()) //★
{
  WScript.Echo("異常です");
  WScript.Quit();
}

注意して欲しいのですが、★の行でフォルダのパスを指定する時、最後の「\」はつけないで下さい。

↓ダミー

http://q.hatena.ne.jp/1226471037

id:isogaya

ありがとうございます。

2008/11/12 17:23:30

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません