Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Olá pessoal, tenho um site que tem um gerenciador onde é possível fazer upload de arquivos.
Os arquivos estão disponiveis no site para download. Alguns não abrem dá erro, mas apenas alguns. Os arquivos são doc ou pdf, alguns abrem e outros não.
A mensagem é esse:
O arquivo baixado no momento não pode ser aberto pelo programa padrão. O arquivo está corrompido ou é de tipo incorreto.
O que pode ser? Será que é problema no código? Mas se fosse todos os arquivos não teriam que dar problema?
Alguém saberia explicar o que ocorre?
Obrigada
ger erro de code nessas horas, verifique se o tamanho esta sendo excedido
eu tive esse problema e resolvi usando esse script pra forçar o download
Function downloadFile(file)
Const DIRETORIO_UPLOAD = "D:\wwwroot\meusite\pastaarquivo"
'Response.Write DIRETORIO_UPLOAD & "\" & file : Response.End()
Server.ScriptTimeout = 30000
'Response.Write(existearquivo(DIRETORIO_UPLOAD & "\" & file)) : Response.End()
Dim fileSize
Dim chunk
Dim i
Dim objStream
Dim ContentType
Dim extensaoArquivo
chunk = 2048
If file <> "" Then
Dim FileExt
Const adTypeBinary = 1
FileExt = Lcase(Trim(Mid("" & file, InStrRev("" & file, "."))))
select case UCase(FileExt)
Case "ASP", "ASA", "ASPX", "ASAX", "MDB"
Response.Write "Não é possível acessar esse tipo de arquivo."
Response.End
end select
Response.Clear
Response.ContentType = "application/octet-stream"
Response.Addheader "content-disposition", "attachment; filename=" & getFileName(DIRETORIO_UPLOAD & "\" & file)
Set objStream = server.CreateObject("ADODB.Stream")
objStream.type = adTypeBinary
objStream.open
objStream.LoadFromFile DIRETORIO_UPLOAD & "\" & file
On Error Resume Next
While not objStream.EOS
Response.BinaryWrite objStream.Read(1024 * 64)
Wend
On Error GoTo 0
objStream.Close
Set objStream = Nothing
Response.Flush
Response.End
end if
End Functiontb
<%
'É necessário passar o nome do arquivo no FORM
Dim Arquivo
Arquivo = Request("arquivo")
Response.Buffer = True
Response.AddHeader "Content-Type","application/x-msdownload"
Response.AddHeader "Content-Disposition","attachment; filename=" & Arquivo
Response.Flush
Set objStream = Server.CreateObject("ADODB.Stream")
objStream.Open
objStream.Type = 1
objStream.LoadFromFile Server.MapPath(Arquivo)
Response.BinaryWrite objStream.Read
objStream.Close
Set objStream = Nothing
Response.Flush
%>
será que não subiram para seu servidor arquivos com extensões trocadas? tipo uma imagem que foi renomeada para doc?