VBScript : 情報収集


  カレントディレクトリとスクリプトが存在するディレクトリ



WshShell オブジェクトより取得できます

  
WScript.Echo WshShell.CurrentDirectory
  

値を設定すると、カレントディレクトリを変更できます。
以下はディレクトリをダイアログで選択し、コマンドラインプロンプトを開きます。
( 選択したディリクトリがカレントとなります )

  
Set objFolder = Shell.BrowseForFolder( 0, "フォルダ選択", 11, 0 )
if objFolder is nothing then
	WScript.Quit
end if
if not objFolder.Self.IsFileSystem then
	WScript.Echo "ファイルシステムではありません"
	WScript.Quit
end if

WshShell.CurrentDirectory = objFolder.Self.Path
WshShell.Run( "cmd.exe" )
  

【重要】
カレントディレクトリは、そのスクリプトをエクスプローラから実行した場合は確実ですが、
他のツールより起動した場合は、そのツールによっては思った結果になりません。、
よって、その スクリプトが存在するディレクトリ を使用したほうが良い場合が多いかもしれません

  
strCurDir = WScript.ScriptFullName
strCurDir = Replace( strCurDir, WScript.ScriptName, "" )
  

上記方法は簡易的ではありますが、ほぼ間違いなく動作します。
しかし、完全な方法は以下のようになります


スクリプトが存在するディレクトリ

  
Set Fso = CreateObject( "Scripting.FileSystemObject" )

strCurPath = WScript.ScriptFullName
Set obj = Fso.GetFile( strCurPath )
Set obj = obj.ParentFolder
strCurPath = obj.Path
  










  infoboard   管理者用   
このエントリーをはてなブックマークに追加





フリーフォントWEBサービス
SQLの窓WEBサービス

SQLの窓フリーソフト

素材

一般WEBツールリンク

SQLの窓

フリーソフト

JSライブラリ