Click here to Skip to main content
65,938 articles
CodeProject is changing. Read more.
Articles
(untagged)

Registering DLL's in a Remote Host

0.00/5 (No votes)
30 Jul 2002 1  
Registering DLL's has always been a nightmare to all the programmers who have to work with remote WebServers.

Introduction

Registering DLL's has always been a nightmare to all the programmers who have to work with remote WebServers.� Its even horrible with servers having customized security settings. Every time the the Server administrator have to be pinged to register / unregister DLLs.

An easy work�around to this problem is to use ASP pages to register / unregister the DLLs. The key to this operation is to use the RUN method of the Windows Scripting Host WshShell class.

Following is a simple asp page using run method to register Dlls.

<%
Dim strPageName
strPageName = "Reg.asp"
If Request.Form("SUBMIT") = "" Then
    Response.write "<CENTER><FORM ACTION=""" & strPageName & """ METHOD=POST>"
    Response.write "<INPUT TYPE=TEXT NAME=FILEPATH SIZE=120>Full Path/Filename "
    Response.write "to DLL to be registered/un registerd<BR>"
    Response.write "<INPUT TYPE=CHECKBOX NAME=ACTIONTYPE CHECKED>Check to "
    Response.write "Register; Uncheck to Unregister<BR>"
    Response.write "<INPUT TYPE=SUBMIT NAME=SUBMIT VALUE=SUBMIT></CENTER>"
    Response.write "</FORM>"
Else
    Set objFileSystem = Server.CreateObject("Scripting.FileSystemObject")
    strPath = objFileSystem.GetSpecialFolder(1) & "\REGSVR32.EXE /s "
    Set objWshShell = CreateObject("WScript.Shell")
    strRun = "CMD /C " & strPath & " /u "
    If Request.Form("ACTIONTYPE")="on" Then strRun = "CMD /C " & strPath
    strReturn = objWshShell.Run(strRun & Request.Form("FILEPATH"), 1, True)  
    Set objFileSystem = Nothing
    Set objWshShell = Nothing
End If
%>

Copy the entire script above including the <% %> script delimiters, and paste it into Notepad and save it as "Reg.asp" on your server Now the only thing you have to know is the drive letter, path and name of the DLL.

License

This article has no explicit license attached to it but may contain usage terms in the article text or the download files themselves. If in doubt please contact the author via the discussion board below.

A list of licenses authors might use can be found here