Basically the program uploads multiple files selected by the user one by one onto an ftp server while uploading an html file named after those individual filesonto the same server.
Everything works fine, but if the user selects more than 2 files the program stops responding.
What do you think the problem here is?
(no error recorded during debug, the program just stops responding.)
Dim dr As DialogResult = Me.OpenFileDialog1.ShowDialog()
If (dr = System.Windows.Forms.DialogResult.OK) Then
'Selecting multiple files here
Dim N As Integer = 0
For Each myFileName In OpenFileDialog1.FileNames
Try
Dim MyAdvancedWebClient As New MyAdvancedWebClient
MyAdvancedWebClient.FileName = OpenFileDialog1.SafeFileNames(N)
Dim myUri As New Uri("ftp://testing.com/" & OpenFileDialog1.SafeFileNames(N))
MyAdvancedWebClient.Credentials = New System.Net.NetworkCredential("username", "password")
'Uploading of main file
MyAdvancedWebClient.UploadFileAsync(myUri, OpenFileDialog1.FileNames(N))
'Uploading the HTML file here
Dim b As New UriBuilder()
b.Host = "testing.com"
b.UserName = "username"
b.Password = "password"
b.Port = 21
b.Path = "/" & OpenFileDialog1.SafeFileNames(N) & ".html"
b.Scheme = Uri.UriSchemeFtp
Dim g As Uri = b.Uri
Dim c As System.Net.FtpWebRequest = DirectCast(System.Net.FtpWebRequest.Create(g), System.Net.FtpWebRequest)
c.Method = System.Net.WebRequestMethods.Ftp.AppendFile
Dim h As System.IO.Stream = (c.GetRequestStream)
Dim SW As New System.IO.StreamWriter(h)
Dim contents = "<html><head></head><body></body></html>"
SW.WriteLine(contents)
SW.Close()
h.Close()
Catch SecEx As SecurityException
' The user lacks appropriate permissions to read files, discover paths, etc.
MessageBox.Show("Security error. Please contact your administrator for details.\n\n" & _
"Error message: " & SecEx.Message & "\n\n" & _
"Details (send to Support):\n\n" & SecEx.StackTrace)
Catch ex As Exception
' Could not load the File - probably permissions-related.
MessageBox.Show(("Cannot Select File: " & myFileName.Substring(myFileName.LastIndexOf("\"c)) & _
". You may not have permission to read the file, or " + "it may be corrupt." _
& ControlChars.Lf & ControlChars.Lf & "Reported error: " & ex.Message))
End Try
N = N + 1
Next myFileName
End If
Everything works fine, but if the user selects more than 2 files the program stops responding.
What do you think the problem here is?
(no error recorded during debug, the program just stops responding.)