GARANTIR DESCONTO

Fórum Salvar arquivo em pasta pre-definida #418498

14/06/2012

0

Olá,

Alguem sabe como fazer isso, o usuario clica em um button abre uma caixa de dialogo onde ele vai procurar por um arquivo na maquina dele e qdo achar seleciona o arquivo e depois clica em SALVAR e o arquivo é salvo numa pasta pre-definida (C:\Contas). Isso pode ser feito com o SAVEDIALOG ou tem que ser outro componente?

Grato

Luiz Carlos
Luiz Carlos

Luiz Carlos

Responder

Posts

14/06/2012

Joel Rodrigues

Cara, você vai usar um componente TOpenDialog e definir o diretório inicial dele. Ao clicar no botão, você pega o nome do arquivo selecionado (opendialog.FileName) e usa para copiar o arquivo para a pasta padrão usando o comando FopyFile.

Boa sorte.
Responder

Gostei + 0

14/06/2012

Luiz Carlos

Voce poderia me dar um exemplo de como usar esse comando, por exemplo o usuario vai buscar o arquivo na maquina dele com o opendialog, ai seleciona o arquivo e clica em ABRIR no opendialog e o arquivo é salvo na pasta C:\Contas direto.Como faço isso?

Grato

Luiz Carlos
Responder

Gostei + 0

14/06/2012

Joel Rodrigues

O código é o seguinte:
if openDlg.Execute then
begin
if CopyFile(PChar(openDlg.FileName), PChar(´C:\Contas\´+ExtractFileName(openDlg.FileName)), True) then
ShowMessage(´Arquivo copiado com sucesso!´);
end;


Eu não testei esse código, escrevi direto aqui. Adeque à sua necessidade e teste.
Responder

Gostei + 0

14/06/2012

Luiz Carlos

Blza Joel, funcionou perfeito. Agora desculpe pertubar de novo, mas como faria para se em vez de aalvar na pasta C:\Contas eu quisesse salvar em uma subpasta cujo nome seria o conteudo de um edit, exemplo: salvar o arquivo que foi selecionado no opendialog em C:\Contas\ + edconta.text (este edconta.text contem o nome da subpasta).

Grato

Luiz Carlos
Responder

Gostei + 0

14/06/2012

Joel Rodrigues

Ora, cara, você mesmo postou a resposta. Você chegou a tentar fazer?
[code]
´C:\Contas\´ + edconta.text+´\´+ExtractFileName(openDlg.FileName)
[code]
Responder

Gostei + 0

14/06/2012

Luiz Carlos

Tentei fazer desse jeito mas não deu certo:

if AbrePDF.Execute then
begin
if CopyFile(PChar(ABREPDF.FileName), PChar(C:\Contas\ + edcontas.Text + ExtractFileName(abrePDF.FileName)), True) then
ShowMessage(Anexo gravado com sucesso!);
end;

Mas ao inves de salvar na subpasta (cujo nome esta no edcontas) ele salva na pasta C:\Contas e o nome do arquivo é alterado da seguinte forma, nome original ALMOX, apos salvar na pasta errada ele tambem altera o nome para 10ALMOX, onde 10 é o conteudo do edcontas.

Grato

Luiz Carlos
Responder

Gostei + 0

14/06/2012

Luiz Carlos

Rapaz, foi vacilo meu, esqueci de colocar a + \
Responder

Gostei + 0

14/06/2012

Luiz Carlos

Rapaz, foi erro meu, esqueci de colocar + \ + depois do edcontas.text, por isso estava dando errado. Muito obrigado pela ajuda Joel.

Grato

Luiz Carlos
Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar