I have a WCF
service running under a service user on my local system. Every time I try to debug it is giving me a message Attach Security warning
.
In Visual Studio, by default (even without attaching), I get this error:
Attaching to this process can potentially harm your computer. If the information below looks suspicious or you are unsure, do not attach to this process
Name: C:\Windows\System32\inetsrv\w3wp.exe
What is w3wp.exe
? According to a Google search, I think it is related to IIS. But what does it do? What setting should be changed so that this won't give this message everytime I try to debug on my local system?
It is the worker process for IIS. Each application pool creates at least one instance of
w3wp.exe
and that is what actually processes requests in your application. It is not dangerous to attach to this, that is just a standard windows message.w3wp.exe is a process associated with the application pool in IIS. If you have more than one application pool, you will have more than one instance of w3wp.exe running. This process usually allocates large amounts of resources. It is important for the stable and secure running of your computer and should not be terminated.
You can get more information on w3wp.exe here
http://www.processlibrary.com/en/directory/files/w3wp/25761/
A Worker Process is user mode code whose role is to process requests, such as processing requests to return a static page.
The worker process is controlled by the www service.
worker processes also run application code, Such as ASP .NET applications and XML web Services.
When Application pool receive the request, it simply pass the request to worker process (w3wp.exe) . The worker process“w3wp.exe” looks up the URL of the request in order to load the correct ISAPI extension. ISAPI extensions are the IIS way to handle requests for different resources. Once ASP.NET is installed, it installs its own ISAPI extension (aspnet_isapi.dll)and adds the mapping into IIS.
When Worker process loads the aspnet_isapi.dll, it start an HTTPRuntime, which is the entry point of an application. HTTPRuntime is a class which calls the ProcessRequest method to start Processing.
For more detail refer URL http://aspnetnova.blogspot.in/2011/12/how-iis-process-for-aspnet-requests.html
Chris pretty much sums up what w3wp is. In order to disable the warning, go to this registry key:
And set the value
DisableAttachSecurityWarning
to 1.