2016-11-01 2 views
0

.netコードを使用してFTPサーバーにアップロードしたビデオを再生しようとすると、アイテムは再生できません。コンテンツを再取得してください。 0xc00d36e5 'となります。私は、FTPサーバへのビデオファイルをアップロードするために使用していたコードはFTPWebRequestを使用してFTPサーバーにアップロードしたビデオファイルを再生しようとしたときにエラーが発生しました

以下の通りです:

Protected Sub btnUpload_Click(sender As Object, e As EventArgs) Handles btnUpload.Click 
    Try 
     Dim posFile As HttpPostedFile = Nothing 
     posFile = MyFile.PostedFile 

     Dim strFileName As String = "" 
     strFileName = posFile.FileName 

     Dim ext As String = "" 
     Dim fileName As String = "" 

     ext = System.IO.Path.GetExtension(strFileName) 
     fileName = "Vid_" + Now().ToString("yyyyMMddHHmmsss") & ext 

     If MyFile.PostedFile.FileName = "" Then 
      lblMsg.Text = "Please select a file to upload." 
      lblMsg.Visible = True 
      lblMsg.CssClass = "error" 
     Else 
      Dim fileBytes As Byte() = Nothing 
      Using fileStream As New StreamReader(posFile.InputStream) 
       fileBytes = Encoding.UTF8.GetBytes(fileStream.ReadToEnd()) 
       fileStream.Close() 
      End Using 

      Try 
       Dim ftp As String = System.Configuration.ConfigurationManager.AppSettings("FtpMediaServerURL") //ftp://www.server.com 

       Dim ftpFolder As String = "/media/" 

       Dim request As FtpWebRequest = DirectCast(WebRequest.Create(ftp & ftpFolder & fileName), FtpWebRequest) 
       request.Method = WebRequestMethods.Ftp.UploadFile 

       request.Credentials = New NetworkCredential(System.Configuration.ConfigurationManager.AppSettings("FtpMediaServerUserName"), System.Configuration.ConfigurationManager.AppSettings("FtpMediaServerPassword")) 
       request.ContentLength = fileBytes.Length 
       request.UsePassive = True 
       request.KeepAlive = False 
       request.UseBinary = True 
       request.ServicePoint.ConnectionLimit = fileBytes.Length 
       request.EnableSsl = False 

       Using requestStream As Stream = request.GetRequestStream() 
        requestStream.Write(fileBytes, 0, fileBytes.Length) 
        requestStream.Close() 
       End Using 

       Dim response As FtpWebResponse = DirectCast(request.GetResponse(), FtpWebResponse) 
       response.Close() 

       lblMsg.Text = "Your file has been uploaded successfully." 
       lblMsg.Visible = True 
       lblMsg.CssClass = "confirmation" 

      Catch ex As Exception 
       lblMsg.Text = "An Error occured while uploading your file. Please try again." 
       lblMsg.Visible = True 
       lblMsg.CssClass = "error" 
      End Try 
     End If 
    Catch ex As Exception 
     //Handle Exception 
    End Try 
End Sub 

誰もが私が間違っているのか、他の私が何かをしないのです何を指摘することはできますか?

+0

基本的なデバッグが完了しました。手動でファイルをダウンロードして、アップロードされた内容を確認してください。 –

+0

はい、ダウンロード後にビデオを再生しようとしました。上記のエラーメッセージが表示されます。私は、両方のファイル(私がアップロードに使用した元のファイルと実際にアップロードされたファイル)のファイルサイズが一致しないことに気づいたことがあります。 – user1990

答えて

0

この問題は解決しました。 ビデオファイルをFTPサーバーに直接アップロードするのではなく、Webサイトサーバーのどこかの一時的な場所にビデオをアップロードし、FTPWebRequestを使用してFTPサーバーに転送することでした。

関連する問題