这是存储在服务器上的批处理文件:
@echo off
echo Hello World test 1
echo %time%
pause
这是下载bat文件的完整代码:
public partial class DeploymentSWUpdate : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
btnDSWUpdate.Attributes.Add("onclick", "javascript:alert('Be sure to Click RUN')");
}
protected void btnDSWUpdate_Click(object sender, EventArgs e)
{
string FilePath = System.Configuration.ConfigurationManager.AppSettings["DeploymentSWSourcePath"].ToString();
string FileDest = "Temp_" + DateTime.Now.ToString("yyyy-MM-dd HH-mm-ss") + ".bat";
if (System.IO.File.Exists(FilePath))
{
Response.Clear();
Response.ContentType = "Text/plain";
Response.AddHeader("Content-Disposition", "attachment; filename=" + FileDest);
Response.AddHeader("Content-Length", new System.IO.FileInfo(FilePath).Length.ToString());
Response.WriteFile(FilePath);
Response.End();
}
else
{
lblMessage.BackColor = System.Drawing.Color.Tomato;
lblMessage.Text = "Please contact Tech Support. Software Update File not found: " + FilePath;
return;
}
}
}
当我点击按钮时,我会看到“运行”,“保存”或“取消”弹出窗口。如果我单击Run it get,则下载并运行两次。
它在Visual Studio中运行良好。但是当我将代码推送到服务器时,批处理文件会运行两次。
更新:
唯一的其他控件是Label,尽管此页面确实使用了Master页面。
链接按钮没有改变任何东西。 [他的模板字段建议只能在网格视图中使用,不是吗?]
按要求,双击的屏幕截图