2010年03月22日


VBScript : HTA が存在するディレクトリを取得する

拡張子 .hta の HTMLアプリケーションを実行中のスクリプトが存在する
ディレクトリを取得します。

str = Replace(window.location&"","file:///","")
str = Replace(str,"/","\")
str = Replace(str,"%20"," ")



タグ:VBScript
posted by at 2010-03-22 10:33 | IE/HTA | このブログの読者になる | 更新情報をチェックする

HTA の起動時に画面いっぱいに表示する

JavaScript では、引数を() で囲って呼び出して下さい

<SCRIPT for=window event=onload language="VBScript">

	window.focus()
	top.moveTo 0, 0
	top.resizeTo screen.width, screen.height - 32

</SCRIPT>



タグ:VBScript
posted by at 2010-03-22 10:40 | IE/HTA | このブログの読者になる | 更新情報をチェックする

2010年03月23日


VBScript : 数値として比較できる OS のバージョンの取得

Windows 2000 : 5.0、XP : 5.1
Vista : 6.0、Windows7 : 6.1

なので、if GetOSVersion() > 5 then というふうに使えます。

関連する情報

Windows NT系 - Wikipedia



ブラウザでダウンロード
<JOB>
<SCRIPT
	language="VBScript"
	src="http://lightbox.on.coocan.jp/webwsh/GetOSVersion.vbs"
></SCRIPT>

<SCRIPT language=VBScript>
' ***********************************************************
' 処理開始
' ***********************************************************

	MsgBox( GetOSVersion() )

</SCRIPT>
</JOB>

上記コードで、オンラインの関数をテストできます


タグ:Windows
posted by at 2010-03-23 22:24 | WMI | このブログの読者になる | 更新情報をチェックする

2010年03月24日


レジストリエディタを指定したキーを選択させて実行する

VISTA からレジストリ内での名前が変更されています。そのために
GetOSVersion 関数が必要になります。元々、regedit は、一つの
プロセスしか起動できないので、終了させるのは容易です。

※ 一旦終了させないと、この選択は起動時にしか行われません
OpenReg( "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run" )

Function OpenReg( strReg )

	Dim str1
	Dim str2
	Dim Wmi 
	Dim colTarget 
	Dim objRow
	Dim WshShell

	Set WshShell = CreateObject( "WScript.Shell" )

	str1 = "Software\Microsoft\Windows\CurrentVersion\Applets\Regedit\LastKey"

	if GetOSVersion() > 5 then
		str2 = "コンピュータ\" & strReg
	else
		str2 = "マイ コンピュータ\" & strReg
	end if

	WshShell.RegWrite "HKCU\" & str1, str2, "REG_SZ"

	strComputer = "."
	Set Wmi = GetObject("winmgmts:" _
	    & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")

	Set colTarget = Wmi.ExecQuery _ 
		("Select * from Win32_Process Where Name = 'regedit.exe'")

	For Each objRow in colTarget 
		objRow.Terminate() 
	Next 

	Call WshShell.Run( "regedit" )

End Function

関連する記事

VBScript : 数値として比較できる OS のバージョンの取得


posted by at 2010-03-24 18:30 | ツール関数 | このブログの読者になる | 更新情報をチェックする

2010年03月25日


VBScript : 実行中のスクリプトが存在するディレクトリ


ブラウザでダウンロード
<JOB>
<SCRIPT
	language="VBScript"
	src="http://lightbox.on.coocan.jp/webwsh/GetScriptDir.vbs"
></SCRIPT>

<SCRIPT language=VBScript>
' ***********************************************************
' 処理開始
' ***********************************************************

	MsgBox( GetScriptDir() )

</SCRIPT>
</JOB>

上記コードで、オンラインの関数をテストできます


posted by at 2010-03-25 14:57 | 基本関数 | このブログの読者になる | 更新情報をチェックする