Buscar

Upload de arquivo em app asp.net

Código

As vezes precisamos incluir arquivos em nossas apps mesmo para internet, mas, algumas vezes, as permissões são negadas, fiz entao uma função bem generalista pra ASP.NET que pode ajudar quem necessita dar um upload de um arquivo sem problema algum de permissão... inclusive para enviar emails com anexo de uma aplicação propria...

Function UpLoadFile(Pg:System.Web.UI.Page; FileUpload:System.Web.UI.HtmlControls.HtmlInputFile; ServerSavePath:String; KBLimitSize:LongInt; UseSessionIDinFileName:Boolean):String;
Var ClientFileName,ServerFileName,ARQ:String;
    UploadOK:Boolean;
Begin
     If (Not Assigned(FileUpload.PostedFile)) or
        (FileUpload.PostedFile.FileName.Length = 0) or
        (FileUpload.PostedFile.ContentLength = 0) then
        Begin
             Result:='Arquivo não selecionado ou inexistente!';
             Exit;
        End;
     If FileUpload.PostedFile.ContentLength > 1024 * KBLimitSize then
        Begin // No máximo mesmo o .NET aceita 3,24MB
             Result:='Arquivo muito grande! O Tamanho máximo permitido é de ' + IntToStr(KBLimitSize) + 'KB.';
             Exit;
        End;

     ClientFileName:=Path.GetFileName(FileUpload.PostedFile.FileName);
     If UseSessionIDinFileName then ARQ:=Path.Combine(ServerSavePath, Pg.Session.SessionID + ClientFileName)
     Else ARQ:=Path.Combine(ServerSavePath, ClientFileName);
     If System.IO.File.Exists(ARQ) then
        System.IO.File.Delete(ARQ);

     ServerFileName:=ARQ;
     UploadOK:=True;

     Try
        FileUpload.PostedFile.SaveAs(ServerFileName);
     Except
           On Ex:Exception do
              Begin
                   UploadOK:=False;
                   Result:='Ocorreu algum erro na tentativa de salvar o arquivo remotamente: ' + Ex.ToString;
              End;
     End;

     If UploadOK then
        Result:='OK';
End;

minha referência de consulta:
http://delphi.about.com/od/aspnet/l/aa070604a.htm

"Não negue informação a quem precisa"

Publicidade

Vote na dica




Quantidade de votos: 0 votos
Aceitação: 0%


Detalhes da dica

Categoria: Arquivos
Adicionada dia: 23/08/06
Por: Marcos André Costa
Visualizada: 2945 vezes

Planeta Delphi - Tudo sobre programação Delphi Planeta Delphi - www.planetadelphi.com.br - Todos os direitos reservados | Copyright 2001-2009