2011-11-28 71 views
0

我需要的代码,将允许用户执行以下操作:浏览目录的保存位置

  1. 选择浏览按钮,然后选择文件夹,他们希望保存一次的exe文件的文件,在结束程序运行

  2. 显示的文件夹位置中的文本框中选择的下给它的用户

基本上,这是一个保存对话框但由于这是一个Web应用而不是一个Web表单我不能使用对话框。

这是我到目前为止的代码,我想它不对,所以请帮助我!

Protected Sub Browse_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Browse.Click 
    Dim FilePath As String = ("C:\Users\Public\Documents") 
    Dim targetFile As System.IO.FileInfo = New System.IO.FileInfo(FilePath) 

    If targetFile.Exists Then 
     Response.Clear() 
     Response.AddHeader("Content-Disposition", "attachment; filename=" + targetFile.Name) 
     Response.AddHeader("Content-Length", targetFile.Length.ToString) 
     Response.ContentType = "application/octet-stream" 
     Response.WriteFile(targetFile.FullName) 
    End If 
End Sub 
+0

你让他们选择服务器上的某个位置,或者在PC上的位置?什么'程序结束时的exe文件'? –

+0

他们正在他们的电脑上选择一个位置...像C:\ Temp这样简单的事情很好。而exe文件只是一个程序,将读取页面上的所有信息 – compucrazy

+0

这将是一个安全漏洞。只要给他们提供文件,并让他们的浏览器决定在哪里保存它。 –

回答

0

正如他们所说,由于安全原因,您无法完全按照自己的意愿去做。但是你可以依靠一个asp.net文件上传控件。

link

+0

你能告诉我,在代码?我知道如何将上传控件放在我的表单上,但我怎样才能做到这一点,以便我可以选择稍后将信息保存到的位置? – compucrazy

+0

您无法将文件从网络浏览器保存到客户机,因为它具有安全隐患。你能想象一下,如果你浏览一个网站,他们有权访问你的机器上的文件存储?现在,您可以将这些文件存储在Web服务器上或Web应用程序可以访问的任何共享上。 – Etch