IEなどの普通のブラウザでは問題無く表示されるサイトなのに、 ブラウザコントロールでWEBサイトを表示した際にだけ、以下のダイアログ「このページのスクリプトでエラーが発生しました。」が表示されてこまったことは無いですか?

ブラウザコントロールで、このスクリプトエラーの表示を出なくするには、IWebBrowser2のput_Silentでサイレントを設定するとエラー表示が出なくなります。
#include <tchar.h>
#include <iostream>
#include <string>
#include <shlobj.h>
#include <comdef.h>
#include <comutil.h>
#pragma warning(push)
#pragma warning(disable:4996)
#include <atlbase.h>
#pragma warning(pop)
// Atl.dllの関数ポインタ定義
typedef BOOL(WINAPI *ATLAXWININIT)();
typedef HRESULT(WINAPI *ATLAXGETCONTROL)(HWND, IUnknown **);
/*
	ブラウザコントロールの生成
*/
int _tmain
(
	  int argc
	, _TCHAR* argv[]
)
{
	// ロケール変更(wcoutでユニコードを出力する為)
	std::wcout.imbue(std::locale("", std::locale::ctype));
	// COMを初期化する
	CoInitialize( NULL );
	/*
		Atl.dllのロード
	*/
	HMODULE hAtl = NULL;
	std::wstring strWindowClassName;
	{
		struct {
			TCHAR* pszDllName;				// DLLの名前
			TCHAR* pszAtlAxWindowClassName;	// ウインドウクラスの名前
		} taDllInfo[] = {
			  { L"atl110.dll", L"AtlAxWin110" }
			, { L"atl100.dll", L"AtlAxWin100" }
			, { L"atl90.dll" , L"AtlAxWin90"  }
			, { L"atl80.dll" , L"AtlAxWin80"  }
			, { L"atl71.dll" , L"AtlAxWin71"  }
			, { L"atl.dll"   , L"AtlAxWin"    }
		};
		for (int nI = 0; nI < _countof(taDllInfo); nI++ ) {
			// DLLをロードしてみる
			hAtl = LoadLibrary( taDllInfo[ nI ].pszDllName );
			if ( NULL != hAtl ) {
				// ロードできたので、ウインドウクラス名を取得
				strWindowClassName = taDllInfo[ nI ].pszAtlAxWindowClassName;
				break;
			}
		}
	}
	if ( NULL == hAtl ) {
		std::wcout << L"atl.dllのロードに失敗しました。" << std::endl;
	}
	else {
		std::wcout << L"atl.dllのロードに成功しました。" << std::endl;
		// Atl.dllの関数ポインタ取得
		ATLAXWININIT    dll_AtlAxWinInit    = (ATLAXWININIT)GetProcAddress( hAtl, "AtlAxWinInit" );
		ATLAXGETCONTROL dll_AtlAxGetControl = (ATLAXGETCONTROL)GetProcAddress( hAtl, "AtlAxGetControl" );
		// Atlの初期化
		dll_AtlAxWinInit();
		// ウインドウ矩形
		RECT tRect = { 100, 100, 1000, 900 };
		/*
			ブラウザコントロールの生成
		*/
		HWND hWnd = CreateWindowEx(
				  0
				, strWindowClassName.c_str()
				, L"Shell.Explorer.2"
				, WS_OVERLAPPEDWINDOW
				| WS_TABSTOP
				| WS_VISIBLE
				, tRect.left
				, tRect.top
				, tRect.right  - tRect.left
				, tRect.bottom - tRect.top
				, NULL	// 親ウインドウハンドル
				, 0
				, (HINSTANCE)::GetModuleHandle( NULL )
				, 0
			);
		if ( NULL == hWnd ) {
			std::wcout << L"ブラウザコントロールの生成失敗" << std::endl;
		}
		else {
			std::wcout << L"ブラウザコントロールの生成成功" << std::endl;
			CComPtr<IUnknown> pUnknown;
			// ATLコントロールの取得
			if ( S_OK != dll_AtlAxGetControl( hWnd, (IUnknown**)&pUnknown ) ) {
				std::wcout << L"IUnknownの取得失敗" << std::endl;
			}
			else {
				std::wcout << L"IUnknownの取得成功" << std::endl;
				CComPtr<IWebBrowser2> pIWebBrowser2;
				// IWebBrowser2の取得
				pUnknown->QueryInterface( IID_IWebBrowser2, (VOID**)&pIWebBrowser2 );
				if ( NULL == pIWebBrowser2 ) {
					std::wcout << L"IWebBrowser2の取得失敗" << std::endl;
				}
				else {
					std::wcout << L"IWebBrowser2の取得成功" << std::endl;
					// サイレント表示へ切り替える
					pIWebBrowser2->put_Silent( VARIANT_TRUE );
					/*
						Yahoo!!のホームページを開く
					*/
					CComVariant	oNaviGateUrl( L"http://www.yahoo.co.jp" );
					CComVariant oNoUse;
					pIWebBrowser2->Navigate2( &oNaviGateUrl, &oNoUse, &oNoUse, &oNoUse, &oNoUse );
				}
				// 時間待ち(テスト用)
				::MessageBox( NULL, L"OKを押下するとブラウザを閉じます。", L"ブラウザコントロールの生成", MB_OK );
			}
			// ウインドウの破棄
			::DestroyWindow( hWnd );
		}
		// Atl.dllの破棄
		FreeLibrary( hAtl );
	}
	// COMの使用終了
	CoUninitialize();
	// 正常終了
	return( 0 );
}
atl.dllのロードに成功しました。 ブラウザコントロールの生成成功 IUnknownの取得成功 IWebBrowser2の取得成功