0

我使用 asp.net 和这段代码用 IE 打开本地文件:

<script type="text/javascript" language="javascript">
    function RunFile() {
        WshShell = new ActiveXObject("WScript.Shell");
        WshShell.Run("d:/11.doc", 1, false);
    }
</script>


<input type="button" value="Run File" onclick="RunFile();"/>

结果还可以:-)

但我想将地址本地文件发送到脚本然后运行这个文件:

例子:

<script type="text/javascript" language="javascript">
    function RunFile() {
        WshShell = new ActiveXObject("WScript.Shell");
        WshShell.Run(**AddressFile**, 1, false);
    }
</script>



protected void Page_Load(object sender, EventArgs e)
{
**AddressFile** = "d:/11.doc";
}
4

1 回答 1

0

如果要从服务器端动态调用 javascript 函数,只需在 JS 函数中添加一个参数以获取文件名:

<script type="text/javascript" language="javascript">
    function RunFile(fileName) {
        WshShell = new ActiveXObject("WScript.Shell");
        WshShell.Run(fileName, 1, false);
    }
</script>

然后在服务器端调用 javascript 函数,如下所示:

this.ClientScript.RegisterStartupScript(this.GetType()
,"somekey"
,"RunFile('"+file_parameter_on_server_side+"')",true)";

更多细节和完整的例子在这里。

于 2012-12-11T20:46:54.917 回答