点击网络表单中的链接按钮下载/打开.exe文件

时间:2015-06-03 07:38:02

标签: c# asp.net web exe

我有一个链接按钮如下:

 <asp:LinkButton ID="Import" runat="server" Font-Size="Small" Visible="true">Import</asp:LinkButton>

点击此链接按钮,我希望用户下载.exe文件(如果该文件尚未存在于用户的计算机中)或打开现有的.exe文件如果它已存在于用户的计算机中。

我试过了:

string str = @"C:\Users\Documents\ConsoleApplication1\ConsoleApplication1\bin\Debug\ConsoleApplication1.exe";
    Process process = new Process();
    process.StartInfo.FileName = str;
    process.Start();

这在我的本地机器上工作正常但是.exe一旦托管就无法从网页访问。我认为这可能是因为网站安全问题(如果我错了,请纠正我)它不允许用户访问.exe位置。

这是一些背景信息。

我的问题是如何修改这个以便用户可以将.exe下载到他自己的机器上(因为我无法访问),如果他已经这样做了一次,下次他点击链接按钮,它打开他以前下载的.exe?

2 个答案:

答案 0 :(得分:2)

如果您希望用户下载您的应用程序(.exe),您应该将其包含在Web项目中,并且链接应该通过相对路径引用该文件。

浏览器永远不会让网站运行.exe文件(在下载之后),只需点击链接,这就是一个很大的安全风险。

答案 1 :(得分:0)

How to launch an EXE from Web page (asp.net)

参考此页面。我们遇到了类似的问题,然后同意以下解决方案。点击允许它将被下载并且将运行选项。这将取决于浏览器。