我有一个链接按钮如下:
<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?
答案 0 :(得分:2)
如果您希望用户下载您的应用程序(.exe),您应该将其包含在Web项目中,并且链接应该通过相对路径引用该文件。
浏览器永远不会让网站运行.exe文件(在下载之后),只需点击链接,这就是一个很大的安全风险。
答案 1 :(得分:0)
How to launch an EXE from Web page (asp.net)
参考此页面。我们遇到了类似的问题,然后同意以下解决方案。点击允许它将被下载并且将运行选项。这将取决于浏览器。