Fórum Como copiar arquivo via TCP/IP da rede interna #371235

15/06/2009

0

Olá.

Gostaria de um exemplo de como copiar um arquivo via tcp/ip de um computador da rede para o servidor ou vice-versa. O ojetivo é fazer um atualizador automático de aplicativo. Vi um exemplo no forum, mas não funciona com a versão indy 10 e não conseguir fazer funcionar com a versão 9.

Desde ja agradeço.


Siro

Siro

Responder

Posts

02/08/2009

Siro

Sobe.


Responder

Gostei + 0

04/08/2009

Diegotiemann

A pouco tempo eu fiz um atualizador desses, não tenho certeza, mas acho que dá pra copiar direto sem usar compentes usando a função abaixo:

function CopyData(const fromDir, toDir: string): Boolean;
var
fos: TSHFileOpStruct;
begin
if FileExists(fromDir) then
begin
//se o arquivo de destino existir
if FileExists(toDir) then
DeleteFile(toDir); //ele é apagado

ZeroMemory(@fos, SizeOf(fos));
with fos do
begin
wFunc := FO_COPY;
fFlags := FOF_SILENT or FOF_NOCONFIRMATION or FOF_NOCONFIRMMKDIR;
pFrom := PChar(fromDir + #0);
pTo := PChar(toDir);
end;
end;
Result := (0 = ShFileOperation(fos));
end;


No parametro fromDir você \\outroPC\pastaCompartilhada\seuarquivo.exe


Responder

Gostei + 0

05/08/2009

Siro

Olá diego.

Obrigado por sua atenção, mas não é isto.
Preciso fazer uma copia do executavel sem que haja o compartilhamento da pasta.

Siro.


Responder

Gostei + 0

05/08/2009

Diegotiemann

Em rede local?

Acho difícil que isso seja possível sem compartilhamento de pasta. Pois onde fica a segurança do windows se isso é possível?


Responder

Gostei + 0

05/08/2009

Siro

Oi diego..
Explicando melhor..
Imagine vc ter que atualizar varios computadores dentro de uma rede interna... Gostaria que fazer com que quando o executavel fosse atualizado no ´servidor´ os outros computadores (´clientes´) ao executar o aplicativo, verificassem a versão que existe no servidor e fizesse a atualização automatica (como se fosse um download).
Acho que me expressei mal ao dizer ´compartilhamento´, minha intenção era dizer ´sem mapear a pasta´.
Como já disse, existe um exemplo aqui o site, mas foi feito com Indy 9, e infelizmente eu não tenho conhecimento para fazer as alterações para funcionar com o IndY 10. O exemplo esta aqui https://www.devmedia.com.br/articles/viewcomp.asp?comp=6333

Mais uma vez, obrigado por sua atenção.

Siro


Responder

Gostei + 0

05/08/2009

Diegotiemann

Depois do almoço vou trazer meu note para o trabalho, dai eu te mando os fontes do atualizador que eu fiz.

Acho que ele vai atender a tua necessidade.

Pra ele funcionar, não precisa ter mapeamento de unidade, mas a pasta do servidor deve estar compartilhada.


Responder

Gostei + 0

05/08/2009

Diegotiemann

Depois do almoço vou trazer meu note para o trabalho, dai eu te mando os fontes do atualizador que eu fiz.

Acho que ele vai atender a tua necessidade.

Pra ele funcionar, não precisa ter mapeamento de unidade, mas a pasta do servidor deve estar compartilhada.


Responder

Gostei + 0

05/08/2009

Diegotiemann

Acabei de postar um artigo sobre isso.

https://www.devmedia.com.br/articles/viewcomp.asp?comp=13870


Só a formatação do mesmo ficou bem estranha.


Responder

Gostei + 0

05/08/2009

Diegotiemann

O artigo foi substituido pelo artigo abaixo:
https://www.devmedia.com.br/articles/viewcomp.asp?comp=13875


Responder

Gostei + 0

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

Aceitar