Old ASP app not working on new server (other ASP pages are fine)

We moved our intranet site to a new server as the old 2003 server was being decommissioned. Once a few tweaks were done we were able to serve up the pages fine and all was good. However there is a page that will only return a 500 server error.
When viewed on the server the error is given as "An error occurred on the server when processing the URL. Please contact the system administrator. If you are the system administrator please click here to find out more about this error."

The link simply goes to an IIS site to tell you how to enable classic asp in IIS which has already been done.
The broken page uses: Server.CreateObject("CDBRecordSet.DBRecordSet") and Server.CreateObject("ADODB.RecordSet") and server.CreateObject("Scripting.FileSystemObject")

Could it be one of these calls that is being blocked (or other?).
Ultimately I will rewrite this app to use a more modern approach but in the meantime, how can I get it up and running?
LVL 29
QPRAsked:
Who is Participating?

[Product update] Infrastructure Analysis Tool is now available with Business Accounts.Learn More

x
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

chaauCommented:
First of all, lets troubleshoot your error. Let's activate the debug messages on your website.
Go to the ASP properties for the site and enable the "Send errors to browser" option (set it to True), as per the attached screenshotASP IISPress the Apply button and visit the erroneous page again. You should see exactly the line where the script failed

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
Big MontyWeb Ninja at largeCommented:
my guess is that it's whatever is calling

Server.CreateObject("CDBRecordSet.DBRecordSet")

The other two calls are for standard ASP built in objects, but CDBRecordSet is not. Is there a custom dll that the site uses? If so, my guess is you either forgot to register it or registered it incorrectly.
QPRAuthor Commented:
Spot on both of you: Server.CreateObject Failed.
This points to Server.CreateObject("CDBRecordSet.DBRecordSet")
I will try to hunt down the file and reg it.
It has been so long since I've dealt with this old school method do you still run regsrv and drag the file into the run box to reg the dll?
Active Protection takes the fight to cryptojacking

While there were several headline-grabbing ransomware attacks during in 2017, another big threat started appearing at the same time that didn’t get the same coverage – illicit cryptomining.

Big MontyWeb Ninja at largeCommented:
that's how I do it :)

are you moving to a 64-bit OS? If so, you have to register it with the 32 bit regsvr32 exe
chaauCommented:
You can either drag or if you are not lazy then type the full path to the dll:
regsvr32 "c:\fullPath to the dll\dllname.dll"

Open in new window

QPRAuthor Commented:
Thanks, I'm trying to get the sys admin to either fire up the old server or dig the file out of back-up, my guess is it would be called CDBRecordSet.dll and will be buried in system32 somewhere
chaauCommented:
It could be called anything
chaauCommented:
The only way to find the name of the dll is by looking into the registry and find the dll name of the registered class name
QPRAuthor Commented:
ok I have the file plus a handy little text file detailing the setup requirements
I have dll registered in component services (that was a walk down memory lane!)
I'm now getting access denied: The call to Server.CreateObject failed while checking permissions. Access is denied to this object.

A quick google tells me to give execute permissions to the VB runtime for the impersonated user. Specifically Msvbvm60.dll... which I can't find in system32
QPRAuthor Commented:
Got it going.
Thanks for the help
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
ASP

From novice to tech pro — start learning today.