2016-04-26 17 views
1

私はC#に慣れていないと言ってこれを前に説明します。POSTリスナをファイル転送

私は、特定のポート(たとえば、192.215.129.28など)から特定のIPアドレス(たとえば192.215.129.28など)の投稿要求があるたびに(常にサーバー上にある)実行されるプログラムを構築しようとしています445)私のプログラムは、投稿されているもの(gzipされたファイルでなければならない)を取得し、このプログラムが動作している私のネットワーク上のフォルダに保存します。

は、私は現在mylocalネットワーク上の要求に耳を傾けるのコードを持っていますが、私はIPに変更したとき、私は私に耳を傾ける必要がある、私がやっているすべては、この行を変更することである

"An unhandled exception of type 'System.Net.HttpListenerException' occurred in System.dll 

Additional information: The process cannot access the file because it is being used by another process"pop up in my visual studio. 

を得る:

そのエラーが発生し、このライン

​​

から

listener.Prefixes.Add("http://127.0.0.1:8000/"); 

。どのように投稿されたものをつかむためにも不明。しかし、ほとんどの場合、このエラーを解決しようとしていますが、なぜIPの変更がそれを壊すのかについて何時間も苦労しています。ここで

は、それが必要とされるだけの場合には、フル機能である:

private void Form1_Load(object sender, EventArgs e) 
     { 
      listener = new HttpListener(); 

      listener.Prefixes.Add("http://192.215.129.28:445/"); 
      listener.AuthenticationSchemes = AuthenticationSchemes.Anonymous; 

      listener.Start(); 
      this.listenThread1 = new Thread(new ParameterizedThreadStart(startlistener)); 
      listenThread1.Start(); 

     } 
+1

を使用しようとすると何が192.215.129.28で聞く場合はどうなりますが、8000ポートに? – Evk

+0

@Evk全く同じこと。しかし、もし私がこのリスナーに間違っていると気付くかもしれません.Prefixes.Add( "http://127.0.0.1:8000/");ポート445で同じ方法でブレークします。したがって、ポート445はいつでも破損しています。 – Lain

+0

実行しているすべての変更(管理者ではない) – Evk

答えて

1

この

listener.Prefixes.Add("0.0.0.0:445"); 
+0

これは質問に対する答えを提供しません。十分な[評判](http://stackoverflow.com/help/whats-reputation)があれば、[任意の投稿にコメントする]ことができます(http://stackoverflow.com/help/privileges/comment)。代わりに、[質問者からの説明を必要としない回答を提供する](http://meta.stackexchange.com/questions/214173/why-do-i-need-50-reputation-to-comment-what-c​​an- i-do-代わりに)。 - [レビューの投稿](レビュー/低品質の投稿/ 12531580) – Console

+1

@Console答えを提供します。それが正しいかどうかは関係ありません。 – cybermonkey