分類:[.NET 全般]
以前の質問で以下内容を教えていただいたのでテストしてみました。
http://bbs.wankuma.com/index.cgi?mode=al2&namber=17131
■17160 より
>> WindowsのIEはクライアントアプリケーションの実行ができていますので。
>これは予め、そのアプリケーションがブラウザ(IE)に登録しているからと言えます。
>ExcelやFlash、Acrobat Reader、リモートデスクトップ等はブラウザ(シェルというべきか?)に登録されているので開けます。
>しかし、電卓やコマンドプロンプト等を自動的に開くことは(通常)できません。
>#もし開けるのであれば、それはローカルゾーンかな?
以下aspxをIISで実行したところ電卓が表示されました。(コマンドプロンプトも表示できました。)
これはIISで実行したとしてもlocalhostを指定した場合はローカルゾーンにあたるのでしょうか?
TestWebForm.aspx
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="TestWebForm.aspx.cs" Inherits="FormsAuth.TestWebForm" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<script language=javascript>
function Test()
{
var objShell = new ActiveXObject("Wscript.Shell");
objShell.Run("\"C:\\windows\\system32\\calc.exe\"");
objShell = null;
return false;
}
</script>
<title>無題のページ</title>
</head>
<body>
<form id="form1" runat="server">
<input type=button value="test" onclick="Test()">
</form>
</body>
</html>
|