私の2人の友人は、私が取り組んでいるWebBrowserコントロールの使用に依存するプロジェクトをテストし、WebBrowserコントロールが含まれているWebページでJavaScriptを実行できないという一定のシナリオに遭遇しました。
絞り込むために、WebBrowserコントロールのみを含む新しいWindowsフォームプロジェクトを作成し、次のページに移動しようとしました:http: //javatester.org/javascript.html
私の友達のコンピューターでの結果は以下のとおりです(クリックして拡大):
ご覧のとおり、JS固有のコードを呼び出そうとしても何もレンダリングされません。あるいは、JSが無効または有効になっているWebブラウザーで表示すると、何かが表示されます。
彼は、有効になっているJavaScriptの設定を含むレジストリキーをエクスポートし(https://gist.github.com/4699943を参照)、各キーの1400の値は、私が使用しているのと同じ設定と一致し、プログラムを実行すると問題ありません。
テストプロジェクト全体のコードは次のとおりです。
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_Shown(object sender, EventArgs e)
{
this.webBrowser1.Navigate("http://javatester.org/javascript.html");
}
}
}
4.5フレームワーク(私のマシンまたは彼のマシンのいずれか)を対象とするこのコードを使用して新しいプロジェクトを作成すると機能しますが、4.0以下を使用して作成した場合は上記の結果が発生します。これが偶然なのか、それとも問題や解決策と関係があるのかはわかりません。
彼がInternetExplorerでこのページに移動しても問題はなく、JavaScriptが有効になっていることを検出します。この問題は、このテストアプリケーションとそれが含まれるメインプロジェクトにのみ存在することに注意してください。
助けていただければ幸いです。私はこれを理解するために2か月を費やしましたが、まだ理解できません。