web-dev-qa-db-ja.com

Internet Explorer 11でのVBScriptサポート

2つのスクリプトで次のHTMLページを試しました。

<html>
  …
  <body>
    <script type="text/javascript">
      alert ('Javascript');
    </script>
    <script type="text/vbscript">
      msgbox "Vbscript"
    </script>
  </body>
</html>

Windows 8.1プレビュー+ Internet Explorer 11では、JavaScriptは機能しましたが、VBScriptは機能しませんでした。

(Windows 8 + IE10)、(Windows 7 + IE9)では、2つのスクリプトが機能しました。

Internet Explorer 11でのVBScriptサポートの終了に関する情報は見つかりませんでしたか?

33
Ensayo

IEチームは長年VBScriptを廃止しようとしてきました。

http://msdn.Microsoft.com/en-us/library/windows/apps/Hh700404.aspx は、ExecScript APIからサポートが削除されたことを示します。 http://msdn.Microsoft.com/en-us/library/ie/dn384057(v = vs.85).aspx は、インターネットゾーンのIE11エッジモードから削除されることを説明しています。

HEADタグに次を追加すると、VBScriptが実行されます。

<meta http-equiv="x-ua-compatible" content="IE=10">
57
EricLaw

実際には非常に簡単です。

IE 10以前はVBScriptをサポートしています。ただし、IE 11からIE 10 and it完璧に動作します。

同じ問題がありました。2004年にASPとVBScriptを使用して開発された古いWebサイトと、次の手順が私にとっての解決策でした。

IE 11で互換モードを変更するには:

  1. F12キーを押して開発者ツールを開きます
  2. 左のツールバーで「エミュレーション」設定ページが表示されるまでスクロールダウンします
  3. ドキュメントモードをデフォルト(「エッジ」)から10に変更します。
  4. VBScriptをお楽しみください
9
Ev.Rei.

実際、私は同じ問題を抱えていて、自分で解決策を見つけました。 EricLawが説明した方法も試しましたが、うまくいきませんでした。ここに私が見つけたものがあります:

ウェブサイトを開き、Tools --> Compatibility View Settingsをクリックし、Add(現在表示しているWebサイトがフォームに自動的に表示されます)をクリックすると、結果が表示されます。

6
ian0411

別の可能な解決策は、単純なHTMLインターフェイスを使用してIE8からIE11への会社の移行を切り抜けるツールを保存するのに苦労していたHTAファイルを使用することです。 file.hta

その後、VBscriptを引き続きサポートするMicrosoft HTMLアプリケーションホストによって開かれます。

欠点は、すべてのCSS形式がサポートされているわけではありませんが、このソリューションを使用するのは本当に簡単です

5
Rafiki

これはおそらく、IE11を標準ブラウザのように見せるためのMicrosoftの取り組みの一部です。

IE11は IEかどうかを確認する既存のすべての方法 (IE11がまだサポートしていない実際の特定の機能検出以外)を削除します。

これは、IEが標準ブラウザと同じように機能するようになり、IEの特殊なケースを持つ既存のコードはもう適用されないはずです。

VBScriptサポートの確認は、Microsoftが防止したい時代遅れの確認の1つにすぎません。

3
SLaks

はい、MSはVBSを廃止しています。 OPのように、いや、私はこの他のどこでも聞いたことがない。彼らは、最後のMSの信者が崖から飛び降りるまで、すべてを陳腐化し、地球から「ドットネット」ではないもの(ASP、Skype API、XNA、Silverlight、Lightswitch、VBA、Expression)のすべての痕跡を根絶することを望んでいるレミングのようなものです)。

Chrome/FFのようになろうとする彼らの試みは、脱走者が向こう側にco病にcうのを見るようなものです。ブロックには最高のエクスプローラーがいましたが、ポピュリズムの知覚の安全性に向かう奇妙なドライブで、彼らは産むガチョウをばらばらにしています手足による黄金の卵の手足。利点をもたらしたのは、DOMモデルがすべてのWindows実行可能ファイルに対して開かれており、実際にVBSを実行したことですが、定期的に高出力ショットガンを自分の足元に向けたいので、これも削除されています。

ウェブページのホストマスターであるあなたがあなたのページがIE11などで実行されていることを知りさえしないようにする彼らの厳格な試み、脳損傷に隣接するイタチ行動のスナック。

そしてまだ<meta http-equiv="x-ua-compatible" content="IE=10">をページヘッダーに追加すると、VBSが復活します(IE11を使用していることがわかると、誰もが最善を尽くしますが)。

マイクロソフトは完全に滑り落ちています。まだ、彼らのOSはAppleと競合するハイエンドのデスクトッププラットフォームとしての地位を保持していますが、Googleや他の企業がプッシュインするとすぐに変化します。開発者は自信を失いました。

1
www-0av-Com

このHTAコードを試してください:

<html><head>
<HTA:APPLICATION 
            ID              = "testHTA" 
            APPLICATIONNAME = "testHTA"
            VERSION         = "0.1"
            NAVIGABLE       = "yes"
            SHOWINTASKBAR   = "yes" 
            SINGLEINSTANCE  = "yes" 
            WINDOWSTATE     = "normal"
            BORDER          = "normal" 
            BORDERSTYLE     = "normal"
            INNERBORDER     = "no"    
            CAPTION         = "yes" 
            MINIMIZEBUTTON  = "yes"
            MAXIMIZEBUTTON  = "yes"
            SYSMENU         = "yes" 
            SCROLL          = "yes" 
            SCROLLFLAT      = "yes"    
            CONTEXTMENU     = "yes"
            SELECTION       = "yes"
        />
</head>
  <script language="javascript" type="text/javascript">
      function MyJsAlert() {
        alert('Hello world!  Opening notepad now...');
      }
  </script>
<script language="VBScript" type="text/vbscript">
MyJsAlert() 'executes javascript
' Create a Windows Shell object
set oShell = CreateObject("WScript.Shell")
oShell.CurrentDirectory = "c:\CAMEO\webapps\"
oShell.run("c:\windows\system32\notepad.exe")
</script>
</body></html>

上記のコードをHTAファイル(つまり、test.hta)として保存し、IEで起動します。このコードはjavascriptとvbscriptを組み合わせており、IE 11。

1
MAbraham1