Upload File via FTP using VB.Net and Receiving "Not Logged In" Error??

T

TC

Hey All,

I'm trying to upload files via FTP and I'm using FtpWebRequest and
WebClient.

Unfortunately, I'm receiving a "Not Logged In" error.

I know that others have seen this as I've seen postings but I haven't seen
any clear resolution.

Does anyone have a code snippet that works?

Can someone please advise?

Thanks,

TC
 
K

kimiraikkonen

Hey All,

I'm trying to upload files via FTP and I'm using FtpWebRequest and
WebClient.

Unfortunately, I'm receiving a "Not Logged In" error.

I know that others have seen this as I've seen postings but I haven't seen
any clear resolution.

Does anyone have a code snippet that works?

Can someone please advise?

Thanks,

TC

You can use My namepsace to upload to FTP server also by passing
credentials if required in the same code syntax:

"My.Computer.Network.UploadFile" method
http://msdn.microsoft.com/en-us/library/dfkdh7eb.aspx

Hope this helps,

Onur Güzel
 
S

Steve

Hey All,

I'm trying to upload files via FTP and I'm using FtpWebRequest and
WebClient.

Unfortunately, I'm receiving a "Not Logged In" error.

I know that others have seen this as I've seen postings but I haven't seen
any clear resolution.

Does anyone have a code snippet that works?

Can someone please advise?

Thanks,

TC

I'm not sure if this is what you are looking for, but this is how I am
uploading a file to my ftp site.

'Variables
Dim local_file As String = path & filename
Dim remote_file As String = ftpsite & filename
Dim cls_request As System.Net.FtpWebRequest =
DirectCast(System.Net.WebRequest.Create(remote_file),
System.Net.FtpWebRequest)
Dim user_name As String = user
Dim password As String = password

'Establish credentials for logging into ftp site
cls_request.Credentials = New
System.Net.NetworkCredential(user_name, password)

'Set properties
cls_request.KeepAlive = False
cls_request.Proxy = Nothing
cls_request.Method =
System.Net.WebRequestMethods.Ftp.UploadFile
cls_request.UseBinary = True

'Read in the file
Dim b_file() As Byte = System.IO.File.ReadAllBytes(local_file)

'Upload the file
Dim cls_stream As System.IO.Stream =
cls_request.GetRequestStream()
cls_stream.Write(b_file, 0, b_file.Length)
cls_stream.Close()
cls_stream.Dispose()

This does overwrite files if they already exist.

Hope this helps,

Steve
 
T

TC

Hey Steve,

When I try to get the stream, it fails with this error:

The remote server returned an error: (550) File unavailable (e.g., file not
found, no access).

Any ideas?

I'm wondering if the URL I was given is the culprit. It is:

ftp://myserverurl.com/../companyname/Incoming/Orders/

Would the "/../" cause problems?

Thanks,

Todd
 
T

TC

Got it to work!

Turns out there was a problem with the URL that I was given. Once I had the
appropriate syntax, I was OK.

By the way, is there any reason one would use:

My.Computer.Network.UploadFile

vs.

the more verbose FtpWebRequest?

It seems that the My.Computer.Network.UploadFile method is very concise and
elegant. However, if more control is required, the latter may be a better
choice. But if all one really needs to do is upload, wouldn't the first be
a better choice?

Thanks,

Todd
 
S

Steve

Got it to work!

Turns out there was a problem with the URL that I was given. Once I had the
appropriate syntax, I was OK.

By the way, is there any reason one would use:

My.Computer.Network.UploadFile

vs.

the more verbose FtpWebRequest?

It seems that the My.Computer.Network.UploadFile method is very concise and
elegant. However, if more control is required, the latter may be a better
choice. But if all one really needs to do is upload, wouldn't the first be
a better choice?

Thanks,

Todd

I'm not to sure about that. I have been using the FtpWebRequest
method which has been working well for me. Maybe a MSFT MVP could
help you on that one.

Glad to know if worked for you.

Steve
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top