Não consigo salvar arquivo no servidor da rede
Olá,
Estou usando o codigo abaixo para salvar um arquivo e ele funciona corretamente, o arquivo é salvo na pasta C:\ContasPDF da maquina:
CopyFile(PChar(ABREPDF.FileName), PChar(C\ContasPDF\ + edcodigo.Text + \ + ExtractFileName(abrePDF.FileName)), True)
Só que agora preciso instalar o programa em rede local e as estações vão ter que salvar o arquivo na pasta C:\ContasPDF no servidor da rede. Tentei fazer com o codigo abaixo mas não esta dando certo, alguem sabe por que? eu já coloquei a pasta C:\ContasPDF do servidor para compartilhar com as estações.
CopyFile(PChar(ABREPDF.FileName), PChar(NOME_DO_SERVIDOR:C\ContasPDF\ + edcodigo.Text + \ + ExtractFileName(abrePDF.FileName)), True)
Grato
Luiz Carlos
Estou usando o codigo abaixo para salvar um arquivo e ele funciona corretamente, o arquivo é salvo na pasta C:\ContasPDF da maquina:
CopyFile(PChar(ABREPDF.FileName), PChar(C\ContasPDF\ + edcodigo.Text + \ + ExtractFileName(abrePDF.FileName)), True)
Só que agora preciso instalar o programa em rede local e as estações vão ter que salvar o arquivo na pasta C:\ContasPDF no servidor da rede. Tentei fazer com o codigo abaixo mas não esta dando certo, alguem sabe por que? eu já coloquei a pasta C:\ContasPDF do servidor para compartilhar com as estações.
CopyFile(PChar(ABREPDF.FileName), PChar(NOME_DO_SERVIDOR:C\ContasPDF\ + edcodigo.Text + \ + ExtractFileName(abrePDF.FileName)), True)
Grato
Luiz Carlos
Luiz Carlos
Curtidas 0
Respostas
Luiz Carlos
21/07/2012
Desculpe, o codigo correto que estou usando para salvar no servidor é:
CopyFile(PChar(ABREPDF.FileName), PChar(NOME_DO_SERVIDOR:C\ContasPDF\ + edcodigo.Text + \ + ExtractFileName(abrePDF.FileName)), True)
Este codigo acima não esta funcionando para salvar o arquivo no servidor, alguem sabe por que?
i
Grato
Luiz Carlos
CopyFile(PChar(ABREPDF.FileName), PChar(NOME_DO_SERVIDOR:C\ContasPDF\ + edcodigo.Text + \ + ExtractFileName(abrePDF.FileName)), True)
Este codigo acima não esta funcionando para salvar o arquivo no servidor, alguem sabe por que?
i
Grato
Luiz Carlos
GOSTEI 0
Luiz Carlos
21/07/2012
Alguem pode ajudar, agora tentei usando o codigo abaixo e tambem não funciona. Preciso fazer isso via CODIGO pois o programa sera colocado em um site para que o proprio usuario baixe e instale o programa, quer dizer, não sou eu que vou instalar e por isso não posso fazer via mapeamento de rede.
Var
NovoNome : String;
begin
\\ o nome do servidor esta no edServ
NovoNome := \\ + edServ.Text + \ContasPDF\ + EDCODIGO.Text + \ + ExtractFileName(FRMAGENDA.abrePDF.FileName);
\\ABREPDF é um opendialog
if ((not FileExists(NovoNome)) or (Application.MessageBox(PChar(Já existe um arquivo com este nome anexado ao contato, deseja substituir o arquivo existente?),
PChar(Confirmação),
MB_OKCANCEL + MB_ICONQUESTION) = mrOk)) and
(CopyFile(PChar(ABREPDF.FileName), PChar(NovoNome), false)) then
ShowMessage(Conta gravada com sucesso!);
end
else
showmessage(Nenhum arquivo foi selecionado);
Grato
Luiz Carlos
Var
NovoNome : String;
begin
\\ o nome do servidor esta no edServ
NovoNome := \\ + edServ.Text + \ContasPDF\ + EDCODIGO.Text + \ + ExtractFileName(FRMAGENDA.abrePDF.FileName);
\\ABREPDF é um opendialog
if ((not FileExists(NovoNome)) or (Application.MessageBox(PChar(Já existe um arquivo com este nome anexado ao contato, deseja substituir o arquivo existente?),
PChar(Confirmação),
MB_OKCANCEL + MB_ICONQUESTION) = mrOk)) and
(CopyFile(PChar(ABREPDF.FileName), PChar(NovoNome), false)) then
ShowMessage(Conta gravada com sucesso!);
end
else
showmessage(Nenhum arquivo foi selecionado);
Grato
Luiz Carlos
GOSTEI 0
Romulo Contro
21/07/2012
que windows é o da outra maquina?
se for vista/7, tem que desativar o compartilhamento de rede com senha, ou então, colocar a senha toda vez que reiniciar o pc...
faz o seguinte... tenta acessar a pasta compartilhada da outra maquina que vc quer copiar, e verifica se pede senha... se pedir, este está sendo o problema... se não, aí é outra coisa...
se for vista/7, tem que desativar o compartilhamento de rede com senha, ou então, colocar a senha toda vez que reiniciar o pc...
faz o seguinte... tenta acessar a pasta compartilhada da outra maquina que vc quer copiar, e verifica se pede senha... se pedir, este está sendo o problema... se não, aí é outra coisa...
GOSTEI 0
Luiz Carlos
21/07/2012
Olá Romulo, quer dizer entao que o codigo que postei abaixo para salvar o arquivo no servidor esta correto?
Var
NovoNome : String;
begin
\\ o nome do servidor esta no edServ
NovoNome := \\ + edServ.Text + \ContasPDF\ + EDCODIGO.Text + \ + ExtractFileName(FRMAGENDA.abrePDF.FileName);
\\ABREPDF é um opendialog
if ((not FileExists(NovoNome)) or (Application.MessageBox(PChar(Já existe um arquivo com este nome anexado ao contato, deseja substituir o arquivo existente?),
PChar(Confirmação),
MB_OKCANCEL + MB_ICONQUESTION) = mrOk)) and
(CopyFile(PChar(ABREPDF.FileName), PChar(NovoNome), false)) then
ShowMessage(Conta gravada com sucesso!);
end
else
showmessage(Nenhum arquivo foi selecionado);
Grato
Luiz Carlos
Var
NovoNome : String;
begin
\\ o nome do servidor esta no edServ
NovoNome := \\ + edServ.Text + \ContasPDF\ + EDCODIGO.Text + \ + ExtractFileName(FRMAGENDA.abrePDF.FileName);
\\ABREPDF é um opendialog
if ((not FileExists(NovoNome)) or (Application.MessageBox(PChar(Já existe um arquivo com este nome anexado ao contato, deseja substituir o arquivo existente?),
PChar(Confirmação),
MB_OKCANCEL + MB_ICONQUESTION) = mrOk)) and
(CopyFile(PChar(ABREPDF.FileName), PChar(NovoNome), false)) then
ShowMessage(Conta gravada com sucesso!);
end
else
showmessage(Nenhum arquivo foi selecionado);
Grato
Luiz Carlos
GOSTEI 0
Romulo Contro
21/07/2012
não cheguei testar ele nao, mas se vc disse que funciona pra salvar local, na rede também deverá funcionar...
eu notei que vc colocou sem aspas nas barras:
NovoNome := \\ + edServ.Text + \ContasPDF\ + EDCODIGO.Text + \ + ExtractFileName(FRMAGENDA.abrePDF.FileName);
no delphi tá com aspas?
e outra coisa, vc ja testou de acessar o diretorio pra ver se pede senha?
outra sugestão também é vc mapear a pasta compartilhada como uma unidade na maquina dos clients...
por exemplo, deixar lá a pasta compartilhada como H:\...
eu notei que vc colocou sem aspas nas barras:
NovoNome := \\ + edServ.Text + \ContasPDF\ + EDCODIGO.Text + \ + ExtractFileName(FRMAGENDA.abrePDF.FileName);
no delphi tá com aspas?
e outra coisa, vc ja testou de acessar o diretorio pra ver se pede senha?
outra sugestão também é vc mapear a pasta compartilhada como uma unidade na maquina dos clients...
por exemplo, deixar lá a pasta compartilhada como H:\...
GOSTEI 0
Luiz Carlos
21/07/2012
Romulo, as aspas sumiram qdo colei o Codigo aqui no post. Vou testar novamente lá na rede do cliente, mas se não der certo vou tentar o mapeamento da pasta na rede. Se eu colocar a pasta como H:, o codigo então ficaria assim correto?
//edserv.text vai conter a letra da pasta mapeada, neste caso H
NovoNome := edserv.text + :\ContasPDF\ + EDCODIGO.Text + \ + ExtractFileName(FRMAGENDA.abrePDF.FileName);
Grato
Luiz Carlos
//edserv.text vai conter a letra da pasta mapeada, neste caso H
NovoNome := edserv.text + :\ContasPDF\ + EDCODIGO.Text + \ + ExtractFileName(FRMAGENDA.abrePDF.FileName);
Grato
Luiz Carlos
GOSTEI 0
Rafael Mota
21/07/2012
Já tentou colocar o IP do servidor no lugar do Nome?? Parece bobagem, mas já passei por problema parecido e resolveu....
GOSTEI 0
Romulo Contro
21/07/2012
acredito que ficaria certo sim, se tiver com permissão pra copiar e tudo mais, não tem pq não dar certo...
mas qualquer coisa avisa aí!
mas qualquer coisa avisa aí!
GOSTEI 0
Luiz Carlos
21/07/2012
Valeu Romulo, consegui resolver com o mapeamento da pasta no serivdor.
Grato
Luiz Carlos
Grato
Luiz Carlos
GOSTEI 0
Romulo Contro
21/07/2012
precisando tamo aí! :D
GOSTEI 0