[Last Call] Learn how to a build a cloud-first strategyRegister Now

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 1753
  • Last Modified:

DLL fails to register on Windows 7 using regsvr32

I am trying to register a custom dll using regsvr32 on Windows 7 Pro SP1 (32bit). The dll in question has been in use for a number of years under Windows XP. I've tried all of the following with no success.

1. Copied the dll and dependencies to \windows\system32
2. Run regsvr32.exe from a command prompt opened as administrator
3. Used absolute paths to both regsvr32.exe and the dll
4. Observed case sensitivity

Each time I try to register the dll the following error dialog is displayed. dll register error
Lots of point on offer for a quick solution.
0
opacons
Asked:
opacons
  • 9
  • 5
  • 3
  • +2
1 Solution
 
xmlmagicianCommented:
I think you might need to run the winxp comparability mode as loads of older programs do not run with win7, or alternatively you can contact the manufacturer for a more up-to-date version.
0
 
opaconsAuthor Commented:
The guy who wrote it is no longer available. I've tried winxp compatibility mode - I think - with the same result. Could you explain the steps to use winxp compatibility mode in case I've missed something?

Thanks.
0
 
CrowaXCommented:
Windows XP mode should do it.

Download it and install from the link below. From there you will get a "virtual xp mode" in your start menu. You can run this and get an XP virtual desktop. Install your app on the XP mode computer. Once it is installed and the shortcuts have been created, you should also get a shortcut in your Windows 7 start menu under "windows virtual PC -> virtual applications". When you run the app, it will open XP mode in the background, and you really won't notice that it isnt running under windows 7.

Some programs will not work correctly in xp mode, but it's worth a shot. It works very well for all of our old apps.

http://www.microsoft.com/windows/virtual-pc/download.aspx
0
Concerto's Cloud Advisory Services

Want to avoid the missteps to gaining all the benefits of the cloud? Learn more about the different assessment options from our Cloud Advisory team.

 
opaconsAuthor Commented:
Thanks for the suggestion but I don't think XP Mode is the solution here. What I didn't mention earlier is that the dll is required as part of a .net application I am developing. I don't want to build a Windows app that will only run in XP compatibility mode.
0
 
CrowaXCommented:
Hmm. What does this DLL do, is it a type of "driver" dll? In that it accesses hardware like a printer, scanner, etc?
0
 
opaconsAuthor Commented:
The DLL provides a hook to a telephony package installed as part of a PABX management system.
0
 
CrowaXCommented:
Most windows XP drivers just will not work in Windows Vista or 7. They changed how drivers work in Vista and beyond. It's very rare (if unheard of) to get network, printer, chipset, sound, modem, etc drivers to work. I'm just wondering if your DLL is a driver that functions the same way. If so, I'm afraid there won't be much you can do about it, besides the XP Mode, which also may not work for this case.
0
 
jcimarronCommented:
opacons--Perhaps of help
http://support.microsoft.com/kb/249873

It is not clear whether you want this .dll to run in both XP and Win7 or only the latter.  This .dll is not part of Win 7.  Maybe that is the problem.
0
 
ded9Commented:
I think jcimarron suggestion should resolve your issue. Just follow the kb article to access SysWoW64 cmd and then try registering the file.



Ded9
0
 
opaconsAuthor Commented:
ded9: I'm running 32-bit Windows 7 not 64-bit.

jcimarron: My development box is Windows 7 Pro 32-bit. The production machine could be anything from Windows XP up.

0
 
jcimarronCommented:
opacons--
"My development box is Windows 7 Pro 32-bit. The production machine could be anything from Windows XP up"
I do not understand the pertinence of that statement the solution suggested.
0
 
opaconsAuthor Commented:
jcimarron: I'm not sure I follow. I want the DLL to run in any version of Windows from XP or higher.
0
 
ded9Commented:
Check this link ...might help

http://www.addictivetips.com/windows-tips/registerun-register-dlls-with-regsvrhelper-in-windows/

If you need  programming help then add that zone .


Ded9
0
 
opaconsAuthor Commented:
Actually, I have the source code but I don't know anything about C++ development. Maybe I could get the DLL rebuilt to work properly with all versions of Windows.  
0
 
ded9Commented:
So the prog was built using C++ source code.


Ded9
0
 
opaconsAuthor Commented:
That's right.
0
 
ded9Commented:
Also what you can do is convert the C++ source code to C# or any other prog code and then complile it.

I think C# i a better option but google for source code converter and you will have lots of options.


Ded9
0
 
ded9Commented:
Convert c++ code to C# (or any other prog cod) . The program should work in all version of windows.


Just found this software...there are many more good software that can converter.

http://www.softpedia.com/get/Programming/Other-Programming-Files/Convert-C-To-C.shtml



Ded9
0
 
opaconsAuthor Commented:
I managed to find the original developer of the component and he was able to get it working for me. Turns out it was a combination of the version of regsvr32.exe and the dependent dlls.  Thanks to all those who contributed.
0
 
opaconsAuthor Commented:
Following instructions received in "Abandoned Question" email.
0

Featured Post

NFR key for Veeam Agent for Linux

Veeam is happy to provide a free NFR license for one year.  It allows for the non‑production use and valid for five workstations and two servers. Veeam Agent for Linux is a simple backup tool for your Linux installations, both on‑premises and in the public cloud.

  • 9
  • 5
  • 3
  • +2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now