私は非常にシンプルなjavascriptコードを持っていますが、
<script language="javascript">
function RunExe()
{
w = new ActiveXObject("WScript.Shell");
w.run('notepad.exe');
return true;
}
</script>
<form id="form1">
<div>
<input type="button" value="Run" onclick="return RunExe()" />
</div>
</form>
ActiveXオブジェクトを作成してnotepad.exeを実行します。これをプレーンHTMLに保存してIEで実行すると、メモ帳を開いて正常に動作しますが、aspxページに挿入して実行すると、 「自動化サーバーはオブジェクトを作成できません」と呼ばれるエラー、私はそれを何度もグーグルで検索しましたが、IE私がすでにやったセキュリティのこととASPまたはIISこれはわかりませんでした。
あなたの提案や意見は非常に理解しやすいものです。
ありがとう
メモ帳からコードを実行できないので、ファイルシステムからページを開いていることになります。別名c:/foo/bar/hello.html
Asp.netページからコードを実行すると、localhostから実行されます。別名 http:// loalhost:1234/assdf.html
これらはそれぞれIEの異なるセキュリティゾーンで実行されます。
これは、Internet Explorerのセキュリティ設定が原因です。これは、Internet Explorerの設定を変更することで修正できます。[設定]-> [インターネットオプション]-> [セキュリティ]タブに移動します。異なるゾーンが表示されます:i)インターネットii)ローカルイントラネットiii)信頼済みサイトiv)制限付きサイト。要件に応じて、1つのゾーンを選択します。私はローカルホストでアプリケーションを実行していますので、ローカルイントラネットを選択し、レベルのカスタマイズボタンをクリックします。セキュリティ設定ウィンドウが開きます。初期化を有効にして、スクリプトオプションに対して安全とマークされていないActivexコントロールのスクリプトを作成してください。
これが機能するためには、本当に、本当にセキュリティ設定を緩める必要があります(一般的にはお勧めしません)
Webサイトを「信頼済みゾーン」に追加してから、カスタム設定(ページの1/2ほど下にスクロール)に移動して変更する必要があります。
ActiveXコントロールとプラグイン-有効(またはプロンプト)...コードに適用される設定のいずれか(最後の設定がヒットしている設定だと思います)-「スクリプトを実行しても安全だとマークされたActiveXコントロール*」
つまり、これを行う本当に本当に理由がない限り、ブラウザのセキュリティに大きな「穴」を開けているということです...非常に慎重にステップを踏んでください...そしてdo not他のエンドユーザーが同じことを喜んで行うことを期待します。
私も同じ問題を抱えて解決しています。リンクをご覧ください
サイトを信頼済みゾーンに追加し、[ツール]メニュー-> [インターネットオプション]-> [セキュリティ]-> [カスタムレベル]-> [スクリプトを実行しても安全とマークされていないActiveXコントロールを初期化およびスクリプト化]
私は同じ問題を抱えていますが、dllを登録することで解決しました
プロジェクトプロパティ=>ビルド=> COM相互運用機能の登録=>チェック