Velocity Reviews - Computer Hardware Reviews

Velocity Reviews > Newsgroups > Programming > ASP .Net > w3wp.exe locking DLL and PDB files.

Reply
Thread Tools

w3wp.exe locking DLL and PDB files.

 
 
z. f.
Guest
Posts: n/a
 
      11-23-2004
Hi,

i have an ASP.NET project that is using a (Class Library Project) VB.NET DLL.
for some reason after running some pages on the web server, and trying to compile the Class Library DLL, it can't compile because the DLL is in use (and the PDB too), and the w3wp.exe process is the process locking the DLL (as viewed with Sysinternals - Process Explorer).
this is a huge problem. i need to do IIS reset in order to free the DLL!

1. why is the w3wp.exe process is locking a class library dll and not locking the asp.net DLL?
2. what will be in production environment, if i have to stop the web server in order to replace the DLL, it is unacceptable.
3. with asp-dot-net DLLs i only have to replace the DLL and the web server is updated. now with shared Class Library project I should have more problems?


please help it's urgent.

TIA, z.

 
Reply With Quote
 
 
 
 
wl
Guest
Posts: n/a
 
      11-23-2004
I assume you mean that the codebehind ASP.NET DLL is in use after the first time the DLL is triggered by requested the corresponding page from the IIS server ?
For performance reasons (amongst others), an ASP.NET DLL gets loaded the first time it is needed and it stays loaded.

You can unload (or change the way the loading is done) by using the "Internet Information Services" applet ("Application Protection" and "Unload")

Wim


"z. f." <(E-Mail Removed)> wrote in message news:(E-Mail Removed)...
Hi,

i have an ASP.NET project that is using a (Class Library Project) VB.NET DLL.
for some reason after running some pages on the web server, and trying to compile the Class Library DLL, it can't compile because the DLL is in use (and the PDB too), and the w3wp.exe process is the process locking the DLL (as viewed with Sysinternals - Process Explorer).
this is a huge problem. i need to do IIS reset in order to free the DLL!

1. why is the w3wp.exe process is locking a class library dll and not locking the asp.net DLL?
2. what will be in production environment, if i have to stop the web server in order to replace the DLL, it is unacceptable.
3. with asp-dot-net DLLs i only have to replace the DLL and the web server is updated. now with shared Class Library project I should have more problems?


please help it's urgent.

TIA, z.

 
Reply With Quote
 
 
 
 
z. f.
Guest
Posts: n/a
 
      11-23-2004
i'm sorry to tell you that your response is not accurate.
first the IIS is not locking my aspnet DLL. i can replace it any time even if a minute ago i run a page that is using this DLL.
the IIS is locking a regular VB.NET DLL that is referenced and used by my aspnet DLL.
lets say i have a vb.net web application called mywebapp and is compiled to mywebapp.dll
and mywebapp is using a dll that is written as a class library project and is called util.dll
all projects are located on a development server (win2003) called devserver.

i use my browser to tun http://devserver/mywebapp/homepage.aspx
homepage.aspx codebehind is compiled into the mywebapp.dll and is using util.dll
if i make changes to util.dll project and want to compile it now, the dll is in use and can't be build again.
if i make changes to my homepage.aspx codebehind and compile it to mywebapp.dll - there is no problem.
this behavior is unaccepted and it is urgent for me to solve this.




"wl" <nospam@nospam> wrote in message news:(E-Mail Removed)...
I assume you mean that the codebehind ASP.NET DLL is in use after the first time the DLL is triggered by requested the corresponding page from the IIS server ?
For performance reasons (amongst others), an ASP.NET DLL gets loaded the first time it is needed and it stays loaded.

You can unload (or change the way the loading is done) by using the "Internet Information Services" applet ("Application Protection" and "Unload")

Wim


"z. f." <(E-Mail Removed)> wrote in message news:(E-Mail Removed)...
Hi,

i have an ASP.NET project that is using a (Class Library Project) VB.NET DLL.
for some reason after running some pages on the web server, and trying to compile the Class Library DLL, it can't compile because the DLL is in use (and the PDB too), and the w3wp.exe process is the process locking the DLL (as viewed with Sysinternals - Process Explorer).
this is a huge problem. i need to do IIS reset in order to free the DLL!

1. why is the w3wp.exe process is locking a class library dll and not locking the asp.net DLL?
2. what will be in production environment, if i have to stop the web server in order to replace the DLL, it is unacceptable.
3. with asp-dot-net DLLs i only have to replace the DLL and the web server is updated. now with shared Class Library project I should have more problems?


please help it's urgent.

TIA, z.

 
Reply With Quote
 
Scott Allen
Guest
Posts: n/a
 
      11-23-2004

I'm assuming your not using the GAC, right?

--
Scott
http://www.OdeToCode.com/blogs/scott/

On Tue, 23 Nov 2004 15:18:41 +0200, "z. f."
<(E-Mail Removed)> wrote:

>i'm sorry to tell you that your response is not accurate.
>first the IIS is not locking my aspnet DLL. i can replace it any time even if a minute ago i run a page that is using this DLL.
>the IIS is locking a regular VB.NET DLL that is referenced and used by my aspnet DLL.
>lets say i have a vb.net web application called mywebapp and is compiled to mywebapp.dll
>and mywebapp is using a dll that is written as a class library project and is called util.dll
>all projects are located on a development server (win2003) called devserver.
>
>i use my browser to tun http://devserver/mywebapp/homepage.aspx
>homepage.aspx codebehind is compiled into the mywebapp.dll and is using util.dll
>if i make changes to util.dll project and want to compile it now, the dll is in use and can't be build again.
>if i make changes to my homepage.aspx codebehind and compile it to mywebapp.dll - there is no problem.
>this behavior is unaccepted and it is urgent for me to solve this.
>
>
>
>
>"wl" <nospam@nospam> wrote in message news:(E-Mail Removed)...
> I assume you mean that the codebehind ASP.NET DLL is in use after the first time the DLL is triggered by requested the corresponding page from the IIS server ?
> For performance reasons (amongst others), an ASP.NET DLL gets loaded the first time it is needed and it stays loaded.
>
> You can unload (or change the way the loading is done) by using the "Internet Information Services" applet ("Application Protection" and "Unload")
>
> Wim
>
>
> "z. f." <(E-Mail Removed)> wrote in message news:(E-Mail Removed)...
> Hi,
>
> i have an ASP.NET project that is using a (Class Library Project) VB.NET DLL.
> for some reason after running some pages on the web server, and trying to compile the Class Library DLL, it can't compile because the DLL is in use (and the PDB too), and the w3wp.exe process is the process locking the DLL (as viewed with Sysinternals - Process Explorer).
> this is a huge problem. i need to do IIS reset in order to free the DLL!
>
> 1. why is the w3wp.exe process is locking a class library dll and not locking the asp.net DLL?
> 2. what will be in production environment, if i have to stop the web server in order to replace the DLL, it is unacceptable.
> 3. with asp-dot-net DLLs i only have to replace the DLL and the web server is updated. now with shared Class Library project I should have more problems?
>
>
> please help it's urgent.
>
> TIA, z.


 
Reply With Quote
 
z. f.
Guest
Posts: n/a
 
      11-23-2004
i don't use the GAC, but in order to solve the problem of DLL copies all around i use a codebase hint in the web.config of my web application. in order to do this i assign a strong name to the DLL and a fix version number.

should this cause any problem with locking the DLL differently from the default way?


"Scott Allen" <bitmask@[nospam].fred.net> wrote in message news:(E-Mail Removed)...

I'm assuming your not using the GAC, right?

--
Scott
http://www.OdeToCode.com/blogs/scott/

On Tue, 23 Nov 2004 15:18:41 +0200, "z. f."
<(E-Mail Removed)> wrote:

>i'm sorry to tell you that your response is not accurate.
>first the IIS is not locking my aspnet DLL. i can replace it any time even if a minute ago i run a page that is using this DLL.
>the IIS is locking a regular VB.NET DLL that is referenced and used by my aspnet DLL.
>lets say i have a vb.net web application called mywebapp and is compiled to mywebapp.dll
>and mywebapp is using a dll that is written as a class library project and is called util.dll
>all projects are located on a development server (win2003) called devserver.
>
>i use my browser to tun http://devserver/mywebapp/homepage.aspx
>homepage.aspx codebehind is compiled into the mywebapp.dll and is using util.dll
>if i make changes to util.dll project and want to compile it now, the dll is in use and can't be build again.
>if i make changes to my homepage.aspx codebehind and compile it to mywebapp.dll - there is no problem.
>this behavior is unaccepted and it is urgent for me to solve this.
>
>
>
>
>"wl" <nospam@nospam> wrote in message news:(E-Mail Removed)...
> I assume you mean that the codebehind ASP.NET DLL is in use after the first time the DLL is triggered by requested the corresponding page from the IIS server ?
> For performance reasons (amongst others), an ASP.NET DLL gets loaded the first time it is needed and it stays loaded.
>
> You can unload (or change the way the loading is done) by using the "Internet Information Services" applet ("Application Protection" and "Unload")
>
> Wim
>
>
> "z. f." <(E-Mail Removed)> wrote in message news:(E-Mail Removed)...
> Hi,
>
> i have an ASP.NET project that is using a (Class Library Project) VB.NET DLL.
> for some reason after running some pages on the web server, and trying to compile the Class Library DLL, it can't compile because the DLL is in use (and the PDB too), and the w3wp.exe process is the process locking the DLL (as viewed with Sysinternals - Process Explorer).
> this is a huge problem. i need to do IIS reset in order to free the DLL!
>
> 1. why is the w3wp.exe process is locking a class library dll and not locking the asp.net DLL?
> 2. what will be in production environment, if i have to stop the web server in order to replace the DLL, it is unacceptable.
> 3. with asp-dot-net DLLs i only have to replace the DLL and the web server is updated. now with shared Class Library project I should have more problems?
>
>
> please help it's urgent.
>
> TIA, z.


 
Reply With Quote
 
Scott Allen
Guest
Posts: n/a
 
      11-23-2004
Ah, yes. I believe ASP.NET will only shadow copy assemblies in the bin
directory. All other assebmlies are loaded into the process from the
original location and would be locked.

--
Scott
http://www.OdeToCode.com/blogs/scott/

On Tue, 23 Nov 2004 16:49:27 +0200, "z. f."
<(E-Mail Removed)> wrote:

>i don't use the GAC, but in order to solve the problem of DLL copies all around i use a codebase hint in the web.config of my web application. in order to do this i assign a strong name to the DLL and a fix version number.
>
>should this cause any problem with locking the DLL differently from the default way?
>
>
> "Scott Allen" <bitmask@[nospam].fred.net> wrote in message news:(E-Mail Removed)...
>
> I'm assuming your not using the GAC, right?
>
> --
> Scott
> http://www.OdeToCode.com/blogs/scott/
>


 
Reply With Quote
 
z. f.
Guest
Posts: n/a
 
      11-23-2004
so if i put it in the GAC will it also be locked?
or is there an attribute in the configuration near the codebase hint to ask the framework to "Shadow" copy the DLL?


"Scott Allen" <bitmask@[nospam].fred.net> wrote in message news:(E-Mail Removed)...
Ah, yes. I believe ASP.NET will only shadow copy assemblies in the bin
directory. All other assebmlies are loaded into the process from the
original location and would be locked.

--
Scott
http://www.OdeToCode.com/blogs/scott/

On Tue, 23 Nov 2004 16:49:27 +0200, "z. f."
<(E-Mail Removed)> wrote:

>i don't use the GAC, but in order to solve the problem of DLL copies all around i use a codebase hint in the web.config of my web application. in order to do this i assign a strong name to the DLL and a fix version number.
>
>should this cause any problem with locking the DLL differently from the default way?
>
>
> "Scott Allen" <bitmask@[nospam].fred.net> wrote in message news:(E-Mail Removed)...
>
> I'm assuming your not using the GAC, right?
>
> --
> Scott
> http://www.OdeToCode.com/blogs/scott/
>


 
Reply With Quote
 
Scott Allen
Guest
Posts: n/a
 
      11-23-2004
I have not tried this, but you might be able to modify the
ShadowCopyDirectories property of the appdomain to include your custom
path, ie:

AppDomain.CurrentDomain.SetShadowCopyPath(
AppDomain.CurrentDomain.SetupInformation.ShadowCop yDirectories +
";" +
"[CustomPath]"
);


Again, I have not tried this, but let me know if you do or do not get
it working, I might investigate some more this evening.

--
Scott
http://www.OdeToCode.com/blogs/scott/

On Tue, 23 Nov 2004 17:52:07 +0200, "z. f."
<(E-Mail Removed)> wrote:

>so if i put it in the GAC will it also be locked?
>or is there an attribute in the configuration near the codebase hint to ask the framework to "Shadow" copy the DLL?
>
>


 
Reply With Quote
 
Scott Allen
Guest
Posts: n/a
 
      11-23-2004
Of course this would have to happen before the web app tries to load
the assembly....

--
Scott
http://www.OdeToCode.com/blogs/scott/

On Tue, 23 Nov 2004 11:53:30 -0500, Scott Allen
<bitmask@[nospam].fred.net> wrote:

>I have not tried this, but you might be able to modify the
>ShadowCopyDirectories property of the appdomain to include your custom
>path, ie:
>
>AppDomain.CurrentDomain.SetShadowCopyPath(
> AppDomain.CurrentDomain.SetupInformation.ShadowCop yDirectories +
> ";" +
> "[CustomPath]"
> );
>
>
>Again, I have not tried this, but let me know if you do or do not get
>it working, I might investigate some more this evening.


 
Reply With Quote
 
z. f.
Guest
Posts: n/a
 
      11-24-2004
thanx, you just made my day!

"Scott Allen" <bitmask@[nospam].fred.net> wrote in message news:(E-Mail Removed)...
Of course this would have to happen before the web app tries to load
the assembly....

--
Scott
http://www.OdeToCode.com/blogs/scott/

On Tue, 23 Nov 2004 11:53:30 -0500, Scott Allen
<bitmask@[nospam].fred.net> wrote:

>I have not tried this, but you might be able to modify the
>ShadowCopyDirectories property of the appdomain to include your custom
>path, ie:
>
>AppDomain.CurrentDomain.SetShadowCopyPath(
> AppDomain.CurrentDomain.SetupInformation.ShadowCop yDirectories +
> ";" +
> "[CustomPath]"
> );
>
>
>Again, I have not tried this, but let me know if you do or do not get
>it working, I might investigate some more this evening.


 
Reply With Quote
 
 
 
Reply

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
Locking locking resolution Frontpage raiderhawk General Computer Support 0 01-08-2008 01:42 AM
Palm::PDB: How to compose a PDB? Josef Moellers Perl Misc 0 08-16-2007 02:29 PM
increase in cpu usage on locking and locking the system sowmya.rangineni@gmail.com Computer Support 0 06-15-2007 12:06 PM
Application locking to support optimisitc locking ? Timasmith Java 4 11-01-2006 12:42 AM
msvcrt.dll, msvcirt.dll, msvcrt20.dll and msvcrt40.dll, explanation please! Snoopy NZ Computing 16 08-25-2003 12:34 PM



Advertisments