15 мая 2023 года "Исходники.РУ" отмечают своё 23-летие!
Поздравляем всех причастных и неравнодушных с этим событием!
И огромное спасибо всем, кто был и остаётся с нами все эти годы!

Главная Форум Журнал Wiki DRKB Discuz!ML Помощь проекту


How do I unload an ISAPI DLL?

Mats Haggren -- haggren@hem.passagen.se
Monday, September 16, 1996

Environment: NT 3.51, MSVC++ 4.2

Hi all!

Does anyone know of a way to unload an ISAPI-dll that has been
loaded by the server. Can the server unload itself? Does the
web server (MS IIS) have to unload by itself. Is it possible at all?

Thanks in advance

  /Mats


---------------------------------------------------------------------
 Mats Haggren                         phone: +46 (0)13  35 92 69        
 Intentia R&D AB                      fax  : +46 (0)13  35 91 03        
 Ottargatan 3                 ///     home : +46 (0)13  27 46 60        
 582 78 Linkoeping, Sweden   (o o)    email: haggren@hem.passagen.se 
--------------------------ooO-(_)-Ooo--------------------------------


---------------------------------------------------------------------
 Mats Haggren                         phone: +46 (0)13  35 92 69        
 Intentia R&D AB                      fax  : +46 (0)13  35 91 03        
 Ottargatan 3                 ///     home : +46 (0)13  27 46 60        
 582 78 Linkoeping, Sweden   (o o)    email: haggren@hem.passagen.se 
--------------------------ooO-(_)-Ooo--------------------------------





Thomas M Tom -- tminzing@ingr.com
Tuesday, September 17, 1996

[Mini-digest: 4 responses]

Check out Microsoft Support Knowledge Base Article Q152054, 'Tips for
Debugging ISAPI DLLs' for information on how to unload ISAPI-dll's.  Its
located at http://www.microsoft.com/kb/developr/win32dk/q152054.htm

Tom Inzinga
Intergraph Corporation
tminzing@ingr.com

>----------
>From: 	Mats Haggren[SMTP:haggren@hem.passagen.se]
>Sent: 	Monday, September 16, 1996 1:46 AM
>To: 	mfc-l@netcom.com
>Subject: 	How do I unload an ISAPI DLL?
>
>Environment: NT 3.51, MSVC++ 4.2
>
>Hi all!
>
>Does anyone know of a way to unload an ISAPI-dll that has been
>loaded by the server. Can the server unload itself? Does the
>web server (MS IIS) have to unload by itself. Is it possible at all?
>
>Thanks in advance
>
>  /Mats
>
>
>---------------------------------------------------------------------
> Mats Haggren                         phone: +46 (0)13  35 92 69        
> Intentia R&D AB                      fax  : +46 (0)13  35 91 03        
> Ottargatan 3                 ///     home : +46 (0)13  27 46 60        
> 582 78 Linkoeping, Sweden   (o o)    email: haggren@hem.passagen.se 
>--------------------------ooO-(_)-Ooo--------------------------------
>
>
>---------------------------------------------------------------------
> Mats Haggren                         phone: +46 (0)13  35 92 69        
> Intentia R&D AB                      fax  : +46 (0)13  35 91 03        
> Ottargatan 3                 ///     home : +46 (0)13  27 46 60        
> 582 78 Linkoeping, Sweden   (o o)    email: haggren@hem.passagen.se 
>--------------------------ooO-(_)-Ooo--------------------------------
>
>
>
-----From: Peter Turpin 

>Subject: 	How do I unload an ISAPI DLL?

>From Program Manager Select
	Control Panel
	Services
	???WWW Services in the list box

Hit the stop button
Hit the start button
	
-----From: "Jean-Luc RENAUD" 

This article in MSDN says: 
TN063: Debugging Internet Extension DLLs
.../...
You can adjust the registry setting at
HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/W3SVC/Parameters/CacheE
xtensions to have the server reinitialize DLLs each time they are used. If
this setting is 1, the server will keep DLLs loaded in memory as long as
possible. This is the default setting for the server, since it helps the
server achieve peak performance, and should only be changed if you are
using the server for debugging. If you make the setting zero, the server
will always reload extension DLLs each time they are used.
Forcing the server to reload your DLL is very helpful when your DLL might
be crashing or upsetting any per-instance data that it maintains. By
forcing the server to reinitialize the DLL, you can get your DLL back into
a predictable state with very little effort. You should make sure you test
your DLL using the normal CacheExtensions setting, however, to make sure
code in your DLL isn’t completely dependent on that initial state.

-----From: Mike Blaszczak 

At 08:46 AM 9/16/96 +0200, you wrote:
>Environment: NT 3.51, MSVC++ 4.2

>Does anyone know of a way to unload an ISAPI-dll that has been
>loaded by the server.

Yep: stop the server.

>Can the server unload itself?

Yes.  Use the Internet Service Manager applicaiton to stop
the server.  The use of the Service Manager is discussed in 
_great_ detail in the documentation that comes with the 
Internet Information Server package. 

>Does the web server (MS IIS) have to unload by itself.

MS IIS is actually a collection of three services, not just the
web publishing service.  It doesn't have to unload by itself:
you can ask it to unload.  You can ask it to unload by using
the Service Manager, or by using the Control Panel.  The
individual services are also responsive to service control
commanands, which you can read about in the Win32 SDK
documentation.

> Is it possible at all?

Yes. See above.

>Thanks in advance

Please buy me a Ducati.  I really love those desmodronic valves.
Thanks in advance!

>---------------------------------------------------------------------
> Mats Haggren                         phone: +46 (0)13  35 92 69        
> Intentia R&D AB                      fax  : +46 (0)13  35 91 03        
> Ottargatan 3                 ///     home : +46 (0)13  27 46 60        
> 582 78 Linkoeping, Sweden   (o o)    email: haggren@hem.passagen.se 
>--------------------------ooO-(_)-Ooo--------------------------------

.B ekiM
http://www.nwlink.com/~mikeblas/
Don't look at my hands: look at my _shoulders_!
These words are my own. I do not speak on behalf of Microsoft.




Karl Krasnowsky Excell -- a-karlkr@MICROSOFT.com
Thursday, September 19, 1996

I believe what the question is (or at least what mine would be), is once
the ISAPI DLLs are running on a production machine and for whatever
reason one needs to be replaced, is it possible to do this without
bringing the entire system down without running the ISAPI's uncached as
the article you're referring to outlines (which of course would defeat
the whole purpose of using ISAPI Dlls in the first place). While not a
big deal if you're running a solitary ISAPI application on a server, in
the case where the server is running multiple applications this wouldn't
be a trivial matter.


"The opinions expressed in this message are my own personal views and do
not reflect the official views of Microsoft Corporation"
Karl Krasnowsky
a-karlkr
(70)3-5312

>----------
>From: 	Inzinga, Thomas M (Tom)[SMTP:tminzing@ingr.com]
>Sent: 	Tuesday, September 17, 1996 10:57 AM
>To: 	'mfc-l@netcom.com'
>Subject: 	RE: How do I unload an ISAPI DLL?
>
>[Mini-digest: 4 responses]
>
>Check out Microsoft Support Knowledge Base Article Q152054, 'Tips for
>Debugging ISAPI DLLs' for information on how to unload ISAPI-dll's.  Its
>located at http://www.microsoft.com/kb/developr/win32dk/q152054.htm
>
>Tom Inzinga
>Intergraph Corporation
>tminzing@ingr.com
>
>>----------
>>From: 	Mats Haggren[SMTP:haggren@hem.passagen.se]
>>Sent: 	Monday, September 16, 1996 1:46 AM
>>To: 	mfc-l@netcom.com
>>Subject: 	How do I unload an ISAPI DLL?
>>
>>Environment: NT 3.51, MSVC++ 4.2
>>
>>Hi all!
>>
>>Does anyone know of a way to unload an ISAPI-dll that has been
>>loaded by the server. Can the server unload itself? Does the
>>web server (MS IIS) have to unload by itself. Is it possible at all?
>>
>>Thanks in advance
>>
>>  /Mats
>>
>>
>>---------------------------------------------------------------------
>> Mats Haggren                         phone: +46 (0)13  35 92 69        
>> Intentia R&D AB                      fax  : +46 (0)13  35 91 03        
>> Ottargatan 3                 ///     home : +46 (0)13  27 46 60        
>> 582 78 Linkoeping, Sweden   (o o)    email: haggren@hem.passagen.se 
>>--------------------------ooO-(_)-Ooo--------------------------------
>>
>>
>>---------------------------------------------------------------------
>> Mats Haggren                         phone: +46 (0)13  35 92 69        
>> Intentia R&D AB                      fax  : +46 (0)13  35 91 03        
>> Ottargatan 3                 ///     home : +46 (0)13  27 46 60        
>> 582 78 Linkoeping, Sweden   (o o)    email: haggren@hem.passagen.se 
>>--------------------------ooO-(_)-Ooo--------------------------------
>>
>>
>>
>-----From: Peter Turpin 
>
>>Subject: 	How do I unload an ISAPI DLL?
>
>>From Program Manager Select
>	Control Panel
>	Services
>	???WWW Services in the list box
>
>Hit the stop button
>Hit the start button
>	
>-----From: "Jean-Luc RENAUD" 
>
>This article in MSDN says: 
>TN063: Debugging Internet Extension DLLs
>.../...
>You can adjust the registry setting at
>HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/W3SVC/Parameters/CacheE
>xtensions to have the server reinitialize DLLs each time they are used. If
>this setting is 1, the server will keep DLLs loaded in memory as long as
>possible. This is the default setting for the server, since it helps the
>server achieve peak performance, and should only be changed if you are
>using the server for debugging. If you make the setting zero, the server
>will always reload extension DLLs each time they are used.
>Forcing the server to reload your DLL is very helpful when your DLL might
>be crashing or upsetting any per-instance data that it maintains. By
>forcing the server to reinitialize the DLL, you can get your DLL back into
>a predictable state with very little effort. You should make sure you test
>your DLL using the normal CacheExtensions setting, however, to make sure
>code in your DLL isn't completely dependent on that initial state.
>
>-----From: Mike Blaszczak 
>
>At 08:46 AM 9/16/96 +0200, you wrote:
>>Environment: NT 3.51, MSVC++ 4.2
>
>>Does anyone know of a way to unload an ISAPI-dll that has been
>>loaded by the server.
>
>Yep: stop the server.
>
>>Can the server unload itself?
>
>Yes.  Use the Internet Service Manager applicaiton to stop
>the server.  The use of the Service Manager is discussed in 
>_great_ detail in the documentation that comes with the 
>Internet Information Server package. 
>
>>Does the web server (MS IIS) have to unload by itself.
>
>MS IIS is actually a collection of three services, not just the
>web publishing service.  It doesn't have to unload by itself:
>you can ask it to unload.  You can ask it to unload by using
>the Service Manager, or by using the Control Panel.  The
>individual services are also responsive to service control
>commanands, which you can read about in the Win32 SDK
>documentation.
>
>> Is it possible at all?
>
>Yes. See above.
>
>>Thanks in advance
>
>Please buy me a Ducati.  I really love those desmodronic valves.
>Thanks in advance!
>
>>---------------------------------------------------------------------
>> Mats Haggren                         phone: +46 (0)13  35 92 69        
>> Intentia R&D AB                      fax  : +46 (0)13  35 91 03        
>> Ottargatan 3                 ///     home : +46 (0)13  27 46 60        
>> 582 78 Linkoeping, Sweden   (o o)    email: haggren@hem.passagen.se 
>>--------------------------ooO-(_)-Ooo--------------------------------
>
>.B ekiM
>http://www.nwlink.com/~mikeblas/
>Don't look at my hands: look at my _shoulders_!
>These words are my own. I do not speak on behalf of Microsoft.
>
>




| Вернуться в корень Архива |