When I configure IIS to run a Web site on Port 1414, I get the following error:
--------------------------- Internet Information Services (IIS) Manager
--------------------------- The process cannot access the file because it is being used by another process. (Exception from HRESULT: 0x80070020)
However, as according to netstat
the port is not in use.
Completely aside from IIS, I wrote a test program (just to open the port and test it):
TcpListener tcpListener;
tcpListener = new TcpListener(IPAddress.Any, port);
try
{
tcpListener.Start();
Console.WriteLine("Press \"q\" key to quit.");
ConsoleKeyInfo key;
do
{
key = Console.ReadKey();
} while (key.KeyChar != 'q');
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
tcpListener.Stop();
The result was an exception and the following ex.Message:
An attempt was made to access a socket in a way forbidden by its access permissions
The port was available but its "access permissions" are not allowing me access. This remains after several restarts.
The port is not reserved or in use as far as I know and while IIS says it is in use, netstat and my test program say it is not and my test program receives the error that I am not allowed to access the port. The test program ran elevated. The IIS Site is running MQSeries, but the MQ listener also cannot start on port 1414 because of this issue. A quick search of my registry found nothing interesting for port 1414.
What are socket access permissions and how can I correct mine to allow access?
Update: Output of netstat for port 1414.
C:\Windows\system32>netstat -ban|findstr 1414
C:\Windows\system32>
According to IBM documentation, mq defaults to 1414, so you won't be able to have both a website and mq using the same port. (Unless I'm misunderstanding your question.)
Above error is coming because default port 8080 is not assigned to system. So default website under IIS manager is not able start. To Resolve the above error i followed the below steps, and it worked for me.
Step 1 - Go to run, type cmd, command prompt will appear.
Step 2 - We need to find which process is using the default port 8080. To find this type the below command in your command prompt.
Netstat -ano
Step 3 - As per above screen the port 8080 is using by the process 3152. Now we need to find which application is assigned for process id 3152. Type
tasklist /fi “PID eq 3152”
in your command prompt and see the result.Step 4 - Start your default website in IIS manager. It will work.
For more detail check here