Solved

Register a DLL on the IIS

Posted on 1998-10-15
12
284 Views
Last Modified: 2013-12-25
I would like to know if there is any way to register a DLL-file without having to stop the IIS. I use InterDev 6.0 and IIS 4 with FrontPage Server Extension, and I have enabled the possibility to register a DLL from my client - that works fine. But still, I have to stop and restart the webserver in order to update a DLL to a newer version just because it is being used by the server.
0
Comment
Question by:mnprsd
  • 6
  • 3
  • 2
  • +1
12 Comments
 
LVL 10

Expert Comment

by:MasseyM
ID: 1829111
To update a DLL, you will always have to stop and start the server... To register the initial instance of the DLL (first installation) you don't have to stop and start... This is due to the fact that the DLL is loaded and is ready to run... Think of it as a train, you attach the car to the existing train and it is running... YOu will have to stop the train disconnect the cars in front and behind to remove the car then you can add back a newer car... if you are just adding a car, you can attach it to the end... (ok, bad example, but it gets an idea across..)
0
 

Author Comment

by:mnprsd
ID: 1829112
I think of it like this. The webserver is using my DLL, that's why I can't register it. If I stop the IIS it releases the DLL, and when I start it again, the FrontPage Server Extension takes care of the registration. I hope there is a way to release the DLL without stopping the IIS. Is there?

(Sorry MasseyM, but I just can't accept your answer, not yet anyway.)
0
 
LVL 10

Expert Comment

by:MasseyM
ID: 1829113
No.  There is no way to release the DLL while the server is running...
0
Master Your Team's Linux and Cloud Stack!

The average business loses $13.5M per year to ineffective training (per 1,000 employees). Keep ahead of the competition and combine in-person quality with online cost and flexibility by training with Linux Academy.

 

Expert Comment

by:narula
ID: 1829114
You can register any DLL while the server is up and running.  However, for you application to make reference to that particular DLL, you must restart your "application" server process.  

If you're running IIS4.0, simply make sure to isolate the application in a separate server process.  If this is unsatisfactory for you, then perhaps it would be a wise idea to partition your application into several server processes.  Granted, you will lose session information for your users when passing them from one application to another, but then you should be able to overcome this by writing a custom script/application.  
0
 
LVL 10

Expert Comment

by:MasseyM
ID: 1829115
No, this is false... YOu can register as many NEW components as you desire... You MUST stop the server to upgrade or remove a component.  I have found NO other way.
0
 

Author Comment

by:mnprsd
ID: 1829116
I tried it, and I'm sorry to say that MasseyM is right. The only option left now is to install a local webserver on each developer-machine.
0
 
LVL 11

Expert Comment

by:mouatts
ID: 1829117
The problem that you are seeing is to do with the architecture of Windows (NT, 95 and 3.x).

A Dynamic Link Library will remain loaded whilst any application that is using it is still running. The only way to utilise a new one is to stop all processes accessing it or to have them each release the library using the FreeLibrary routine within the API. But as you don't have access to the IIS code you are stuck.

Steve
0
 
LVL 10

Expert Comment

by:MasseyM
ID: 1829118
Hey mouatts, that is what i have been saying all along...

INstalling a Personal Server on the development machine is THE best answer... This give the developers the option to test their programs and not wory about crashing the server... This is the way to go.
0
 

Expert Comment

by:narula
ID: 1829119
You're correct.  Clearly if the component is already registered and a running application is making reference to it, you will not be able to update/remove the DLL.  But if you're talking about a new DLL that has never been referenced, I believe my answer was incorrect.  You shouldn't need to restart the server for new DLLs.  And as for running a test server, I think that mnprsd's problem is that s/he wants to update an application while users are using it.  Is this right?  
0
 
LVL 10

Expert Comment

by:MasseyM
ID: 1829120
Would you like me to repost as an answer...
0
 

Author Comment

by:mnprsd
ID: 1829121
narula is almost correct, at least it makes no difference. The webserver I am using is used as a "developer webserver" on my company, by at the moment three developers which are working on three different projects. There are no plain users, but if I just stop the server I will most certainly hang the next morning:)

I guess MasseyM was first with a not-so-satisfying though a probably correct answer, so I must give him some points. And for your information, I'm about to install a webserver on my own machine right now!!
0
 
LVL 10

Accepted Solution

by:
MasseyM earned 150 total points
ID: 1829122
That is a good choice... Just to let you know...  I develope web sites and applications every day... I crash my server sometimes 2-3 daily just because of testing and "problem resolution" response times (Let's see how fast I can get it back up).  This is the best way to go for you from what you have been telling us...

0

Featured Post

3 Use Cases for Connected Systems

Our Dev teams are like yours. They’re continually cranking out code for new features/bugs fixes, testing, deploying, testing some more, responding to production monitoring events and more. It’s complex. So, we thought you’d like to see what’s working for us.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Introduction:   Welcome to my first article ever. To begin with, the reason I write this article.  I participated in a question on Experts Exchange about the start command in Windows and there were some discussion about the usage. The discussio…
Introduction This tutorial will give you a fast look what you can do with WhizBase. I expect you already know how to work with HTML at least, and that you understand the basics of the internet and how the internet works. WhizBase is a server-s…
The viewer will learn how to look for a specific file type in a local or remote server directory using PHP.
In this fourth video of the Xpdf series, we discuss and demonstrate the PDFinfo utility, which retrieves the contents of a PDF's Info Dictionary, as well as some other information, including the page count. We show how to isolate the page count in a…

816 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

8 Experts available now in Live!

Get 1:1 Help Now