27 messaggi dal 22 novembre 2004
Salve, ho il seguente problema, dalla mia applicazione, visualizzo in una data grid view un elenco di file presenti su un disco di rete mappato con lettera "T:" .

Se si clicca sulla riga della griglia che mostra l'elenco dei file fisici presenti sul disco T: si esegue il download del file in questione.

La pagina in debug funziona, esegue il download dei file, appena la pubblico sul server 2000 e clicco sulla riga x il download del file mi scarica un file vuoto.

Il disco mappato hanno la stessa lettera, lo stesso utente...

di seguito imposto il codice che uso...

proprietà file
Private ReadOnly Property AbsoluteFolderPath() As String
        Get
            If IO.Path.IsPathRooted(ConfigurationManager.AppSettings("Path")) Then
                Return ConfigurationManager.AppSettings("Path")
            Else
                Return Server.MapPath(ConfigurationManager.AppSettings("Path"))
            End If
        End Get
    End Property
    Private ReadOnly Property FILENAME() As String
        Get
            Dim value As String = Request("FILENAME")

            If Not String.IsNullOrEmpty(value) Then
                Return value
            Else
                Return String.Empty
            End If
        End Get
    End Property


sul campo della tabella che si clicca per scaricar e il file

    Protected Sub DGV_RICEVUTE_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles DGV_RICEVUTE.SelectedIndexChanged

        If DGV_RICEVUTE.SelectedIndex <> -1 Then
            Dim NomePath As String = ConfigurationManager.AppSettings("Path") & "\" & DDL_GRUPPO.SelectedItem.Text & "\" & DDL_SOCIETA.SelectedItem.Text & "\" & IDE_ANNO.Text & "\" & DDL_ID_TELEMATICO.Text & "\pp\ss"
            Dim Appoggio() As String = Split(DGV_RICEVUTE.SelectedDataKey.Item(0).ToString.ToUpper, ".")

            Dim NomeFile As String = Appoggio(0)
            Dim dInfo As New DirectoryInfo(NomePath & "\" & NomeFile & ".xxx") 'Creo l'oggetto DirectoryInfo

            'downloads file
            IDL_MESSAGGIO.Text = "WT-RIR0: file " & NomePath & "\" & NomeFile & ".xxx"
            IDL_MESSAGGIO.ForeColor = Drawing.Color.Black
            IDL_MESSAGGIO.Font.Bold = True
            IDL_MESSAGGIO.Visible = True
            Response.Redirect(String.Format("ricevute.aspx?FileName={0}", NomePath & "\" & NomeFile & "_rel.stf"))
        End If

    End Sub


load della pagina che scatta dopo il redirect

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load

        If Not IsPostBack Then
            IDL_MESSAGGIO.Text = ""
        End If
        
        If Not String.IsNullOrEmpty(Me.FILENAME) Then
            Dim File As New IO.FileInfo(IO.Path.Combine(Me.AbsoluteFolderPath, Me.FILENAME))
            Try
                Response.Clear()
                Response.AddHeader("Content-Disposition", String.Format("attachment; filename={0}", File.Name))
                Response.AddHeader("Content-Length", File.Length.ToString())
                Response.ContentType = "application/octet-stream"

                ' leggo dal file e scrivo nello stream di risposta
                IDL_MESSAGGIO.Text = "WT-RIR0: file " & File.FullName
                IDL_MESSAGGIO.ForeColor = Drawing.Color.Black
                IDL_MESSAGGIO.Font.Bold = True
                IDL_MESSAGGIO.Visible = True

                Response.WriteFile(File.FullName)
                Response.End()

            Catch ex As Exception
                ErrorePagina("errore visualizzazione file")
                Response.End()
            End Try
        End If

    End Sub



X' se pubblico scarico un file vuoto?
l'Hosting è un w2000 server... ho altre pagine su questo hosting che mi permettono di scaricare i file tranquillamente.
lanfra wrote:
Salve, ho il seguente problema, dalla mia applicazione, visualizzo in una data grid view un elenco di file presenti su un disco di rete mappato con lettera "T:" .

i dischi di rete sono mappati in base all'utente e probabilmente quello con cui effettua l'accesso l'applicazione (che in Windows 2000, se non lo cambi, è ASPNET) non ha questo disco mappato.

Daniele Bochicchio | ASPItalia.com | Libri
Chief Operating Officer@iCubed
Microsoft Regional Director & MVP

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.