2011-11-28 75 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