Visual C++ .NET - Coneccion a ftp

 
Vista:

Coneccion a ftp

Publicado por Edu (1 intervención) el 15/06/2007 02:47:58
hola chic@s, llevo un buen rato peleándome un trozo de código que he encontrado y estoy modificando, pero no entiendo porque me falla, a ver si ustedes veis el error

Imports System.Net
Imports System.IO.Stream


Public Class Form1

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim clsRequest As System.Net.FtpWebRequest = _
DirectCast(System.Net.WebRequest.Create("ftp://ftp.servidor.es/incoming/t.txt"), System.Net.FtpWebRequest)
' clsRequest.Credentials = New System.Net.NetworkCredential("myusername", "mypassword")
clsRequest.Method = System.Net.WebRequestMethods.Ftp.UploadFile

Dim bFile() As Byte = System.IO.File.ReadAllBytes("C:\t.txt")

Dim clsStream As IO.Stream

clsStream = clsRequest.GetRequestStream() <------ Aqui me da el error y me dice q no se a declarado el nombre GetRequestStream, q si lo esta

clsStream.Write(bFile, 0, bFile.Length)
clsStream.Close()
clsStream.Dispose()
End Sub
End Class
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Alejandro

Problema al utilizar FtpWebRequest en un proyecto Windows Forms

Publicado por Alejandro (265 intervenciones) el 31/01/2024 00:35:22
Edu, el error que estás experimentando podría deberse a la falta de importación de espacios de nombres específicos o posiblemente una confusión de nombres en el código. Aquí hay una versión corregida del código:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
Imports System.Net
Imports System.IO
 
Public Class Form1
 
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Dim clsRequest As System.Net.FtpWebRequest = _
            DirectCast(System.Net.WebRequest.Create("ftp://ftp.servidor.es/incoming/t.txt"), System.Net.FtpWebRequest)
        ' clsRequest.Credentials = New System.Net.NetworkCredential("myusername", "mypassword")
        clsRequest.Method = System.Net.WebRequestMethods.Ftp.UploadFile
 
        Dim bFile() As Byte = System.IO.File.ReadAllBytes("C:\t.txt")
 
        Dim clsStream As IO.Stream
 
        Try
            clsStream = clsRequest.GetRequestStream()
            clsStream.Write(bFile, 0, bFile.Length)
        Catch ex As Exception
            MessageBox.Show("Error al obtener el flujo de solicitud: " & ex.Message)
        Finally
            If clsStream IsNot Nothing Then
                clsStream.Close()
                clsStream.Dispose()
            End If
        End Try
    End Sub
 
End Class

Cambios realizados:

1. Añadido Import para System.IO: Para asegurar que `IO.Stream` sea reconocido, se ha añadido `Imports System.IO` al comienzo del archivo.

2. Manejo de excepciones: He añadido un bloque `Try-Catch` para manejar cualquier excepción que pueda ocurrir al obtener el flujo de solicitud. Esto te permitirá ver un mensaje de error si algo va mal.

3. Verificación de `clsStream` antes de cerrar y liberar: Asegurado de que `clsStream` no sea `Nothing` antes de intentar cerrarlo y liberarlo.

Espero que estos cambios ayuden a resolver tu problema. Si sigues experimentando dificultades, asegúrate de que estás utilizando las referencias correctas y de que no hay conflictos de nombres en tu proyecto.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar