2009-06-15 12 views
0

J'ai une application Java qui télécharge un fichier à partir d'un serveur distant. Je voudrais savoir où l'application télécharge réellement un fichier. J'ai essayé de capturer le paquet tcp/ip et j'ai trouvé ci-dessous des informations.comment télécharger un fichier en C# en utilisant webclient?

protocol: TCP 
remote address: xxx.xxx.xxx.xx 
local port: xxxx 
remote port: xxxxx 

Je connais le fichier exact maintenant. Cependant, lorsque j'essaie d'accéder au fichier en utilisant le navigateur Web, je vois "Internet Explorer ne peut pas afficher la page Web".

puisque l'application est compilée par Java, il doit y avoir un moyen de le faire en C#.

s'il vous plaît me conseiller ..

Merci!

Répondre

2

Ce n'est pas parce que l'application Java est capable de télécharger le fichier qu'elle le fait via HTTP. Le fait que IE n'arrive pas à afficher quelque chose d'utile suggère ce n'est pas HTTP, bien que ce ne soit pas une garantie.

Vous devriez regarder comment l'application Java télécharge le fichier et déterminer le protocole - cela devrait vous indiquer comment faire la même chose à partir de C#.

Bien sûr, cela suppose que vous avez le code pour l'application Java. Si vous ne le faites pas, mais vous pensez que les auteurs seraient heureux que vous téléchargiez le fichier avec votre propre code en C#, je vous suggère de leur envoyer un email pour leur demander le protocole. Si elles ne veulent pas vous voulez accéder au fichier autre que leur application, je respecterais personnellement leurs souhaits.

+0

n'est-ce pas TCP? SmartSniff (capture de paquets) le montre comme TCP – Moon

+1

TCP est un protocole de bas niveau - vous devez connaître le protocole de plus haut niveau. La plupart des protocoles Internet fonctionnent sur TCP. –

+0

@Jon Skeet // Merci! J'ai beaucoup appris. – Moon

Questions connexes