none
copiar arquivo do cliente para o servidor sem usar input.file RRS feed

Respostas

  • Junior,

    Antes de mais nada pense sempre na questão de segurança... imagine o que aconteceria se vc entrasse em uma pagina e de repente ela comesse a mover, apagar, copiar e mexer nos seus arquivos...

    Existem formas... mas não podem ser tão simples por questoes de segurança...

    Sobre paginas HTML e ASP... o conceito basico da Web é... enviar uma string para o servidor as informações da pagina q vc quer acessar, o servidor processa essa informação e te retorna um codigo HTML para o seu browser....

    Atraves de JavaScript, voce pode executar algumas operações no cliente.... desde que não exista nenhuma operação que possa comprometer os arquivos na maquina.... manipulação de arquivos nem pensar...

    A unica forma de manipular os arquivos de uma determinada maquina é executando uma aplicação nessa maquina ! (nem que seja um VNC ou Terminal Service), o que vc pode fazer é usar as tags html "embed" e "object" para executar esses aplicativos locais junto com a sua pagina....

    Novamente, vc vai ter que usar um java applet, flash, shockwave, activex, silverlight.... algum plug-in rodando no cliente.

    • Marcado como Resposta Junior_luiz quarta-feira, 23 de novembro de 2011 11:56
    terça-feira, 22 de novembro de 2011 22:41
    Moderador

Todas as Respostas

  • Voce pode fazer uma pequena aplicação em silverligth para customizar o seu upload e usar-la como se fosse um control

     

    http://silverlightfileupld.codeplex.com/

    segunda-feira, 21 de novembro de 2011 19:46
    Moderador
  • Rui é uma saída bem interessante, mais é um projeto pequeno e não queria colocar silverlight nele, até mesmo pq nunca mexi com silverlight, ai nesse caso iria demorar até eu aprender a usá-lo.
    Junior
    terça-feira, 22 de novembro de 2011 11:56
  • Então Junior,

    Via HTML / ASP/ Javascript, já lhe adianto que não existe outra forma que não seja usando o Input File.... 

    As soluções que voce pode usar variam entre, Java Applet, Flash, Shockwave, ActiveX, Silverlight, ...

    Resumindo, você vai precisar usar algum add-on que possa ser executado (e instalado, autorizado e todos os requisitos de segurança permitidos) localmente no computador que está enviado o arquivo.

    Ja existe muita coisa no proprio codeplex sobre envio de arquivos via Silverlight, e como é programavel em C#, acredito que seria a solução mais simples para voce...

    Acho tambem q existe alguma coisa em HTML5, ainda to tentando arrumar um tempo pra estudar ele a fundo... mas pelo que vi ainda usa o file upload...

     

    terça-feira, 22 de novembro de 2011 12:15
    Moderador
  • Rui então em cima do file.input existe a possibilidade de forçar o usuário sempre que clicar no file.input eu direcioná-lo para uma pasta ?

    É que essa minha página a pasta que vou procurar no cliente é pre-definida e não muda, por isso não queria usar o input.file assim tornaria transparente para o usuário e assim eu não teria que controlar certas coisas como a extensão do arquivo e outros detalhes, eu até fiz algo mais qdo fui publicar deu erro ele sempre aponta para o caminho do projeto na minha máquina ai voltei para o input.file

    Abri uma pergunta aqui a esse respeito

    http://social.msdn.microsoft.com/Forums/pt-BR/aspnetpt/thread/556c877f-f8b3-4334-bf88-d15b8c554097


    Junior
    terça-feira, 22 de novembro de 2011 13:10
  • Rui, outra dúvida qdo quero criar arquivo copiar e mover eu posso fazer isso no lado cliente ou só  no servidor ? pq nessa página após eu copiar o arquivo que o usuário selecionou e copia-lo para o servidor, queria move-lo no cliente para outra pasta isso é possível ? Estou fazendo essa pergunta pq como fiz anteriormente no meu micro td funciona mais qdo publico dá erro, acho que o erro é pq no servidor não existe as pastas que uso no cliente então qdo coloco tipo isso @"c:\pasta" e publico ele vai procurar esse caminho no servidor e não no cliente, estou errado ?
    Junior
    terça-feira, 22 de novembro de 2011 13:19
  • Junior,

    Antes de mais nada pense sempre na questão de segurança... imagine o que aconteceria se vc entrasse em uma pagina e de repente ela comesse a mover, apagar, copiar e mexer nos seus arquivos...

    Existem formas... mas não podem ser tão simples por questoes de segurança...

    Sobre paginas HTML e ASP... o conceito basico da Web é... enviar uma string para o servidor as informações da pagina q vc quer acessar, o servidor processa essa informação e te retorna um codigo HTML para o seu browser....

    Atraves de JavaScript, voce pode executar algumas operações no cliente.... desde que não exista nenhuma operação que possa comprometer os arquivos na maquina.... manipulação de arquivos nem pensar...

    A unica forma de manipular os arquivos de uma determinada maquina é executando uma aplicação nessa maquina ! (nem que seja um VNC ou Terminal Service), o que vc pode fazer é usar as tags html "embed" e "object" para executar esses aplicativos locais junto com a sua pagina....

    Novamente, vc vai ter que usar um java applet, flash, shockwave, activex, silverlight.... algum plug-in rodando no cliente.

    • Marcado como Resposta Junior_luiz quarta-feira, 23 de novembro de 2011 11:56
    terça-feira, 22 de novembro de 2011 22:41
    Moderador
  • Rui era exatamente isso que eu já tinha percebido, como postei na minha dúvida só imaginei que talvés isso seria possível.

     

    Obrigado por esclarecer minha dúvida.


    Junior
    quarta-feira, 23 de novembro de 2011 11:48
  • Relaxa.... acredite essa é uma duvida rotineira aqui no forum ate....

     

    quinta-feira, 24 de novembro de 2011 23:23
    Moderador