以下にバッチ スクリプトがあります (特定の行番号で Visual Studio のファイルを開くおよびバッチ スクリプトを使用してレジストリ キーの値を取得するにはどうすればよいですか?から派生させることができました)。
@echo off
for /f "tokens=3*" %%x in ('reg query "HKLM\SOFTWARE\Microsoft\Window\CurrentVersion\App Paths\devenv.exe"') do set DEVENV="%%x %%y"
%DEVENV% /Command "Edit.Goto %1" "E:\Bat\Example\Sample\%2"
@echo off
以下に示す Javascript コードを使用して上記のバッチ スクリプトを実行します。 と の値は、以下に示すように、%1
この%2
Javascript によって数値 (10) およびパス ( examples/helloWorld/helloWorld.cpp
) として渡されます。
<html>
<head>
<script language="JavaScript" type="text/javascript">
MyObject = new ActiveXObject( "WScript.Shell" )
function Goto()
{ MyObject.Run("D:/GoToLine2.bat 10 examples/helloWorld/helloWorld.cpp") ;}
</script>
</head>
<body>
<h1>Run a Program</h1>
This script launches a bat file >> <p>
<button onclick="Goto()">Run BatFile</button>
</body>
</html>
私の問題は、「E:\Bat\Example\Sample」のレジストリ キーがありHKLM\SOFTWARE\Wow6432Node\BI\Science\AB
、その値を取得する方法がわからないためE:\Bat\Example\Sample\
、バッチ ファイルのようにパスを渡す必要がなく、取得するだけです。レジストリから "%2" (Javascript コードから取得したもの、つまりexamples/helloWorld/helloWorld.cpp
) をその値に追加します。Windows 7 64 ビット PC を使用しています。