pttrimz
Messages postés3Date d'inscriptionmercredi 8 novembre 2000StatutMembreDernière intervention27 octobre 2005
-
27 oct. 2005 à 21:16
dominique.stock
Messages postés436Date d'inscriptionvendredi 7 novembre 2003StatutMembreDernière intervention 8 octobre 2008
-
28 oct. 2005 à 17:16
Salut, j'ai developpé un programme avec les composants IdTcpClient et
IdTcpserver pour faire un transfert de fichier entre poste.A cet effet
j'ai fait deux petits programme l'un client et l'autre server. Comme
vous le savez, pour effectuer le transfert il faut que les deux
programmes soient lancés. Je voudrais donc savoir comment rester sur
l'un des postes (exemple le server) et lancer le programme client
sur un autre poste à distant afin de pouvoir faire le transfert?
client :
line : string;
endline : string;
begin
line := socket.receivetext ;
if Copy(line, 1, Pos('|', line)-1 ) = 'Prog' then
endline:=(Copy(line, Pos('|', line)+1, Length(line)));
shellexecute(0,nil, endline,nil,nil,SW_SHOW);
end;
end.
tu envois du serveur au client 'Prog|Program Files\Microsoft Office.exe'.
Si le message recu par le client du début jusqu'à "|" corresponnd à Prog alors le reste du message c'est à dire Program Files\Microsoft Office.exe' est nommé endline. Tu execute Program Files\Microsoft Office.exe c'est à dire endline par shellexecute.
Pour lancer ton client à distance tu peux pas : le serveur si mais il doit etre mis dans la base de registres afin qu'il démarre automatiquement au démarrage de windows.
Mais la je me pose une question : il va peut etre il y avoir un beugue car ton client (serveur en réalité) va se lancer et le pc ne sera pas connecté sur le net. Il va falloir un traitement d'erreur et une procédure de timer.