Mark Minasi's Reader Forum
Mark Minasi's Reader Forum
Home | Profile | Register | Active Topics | Active Polls | Members | Search | FAQ | Minasi Forum RSS Feed
 All Forums
 HALP! Questions on Windows and Windows Server
 Windows Vista
 The ordinal 442 could not be located

Note: You must be registered in order to post a reply.
To register, click here. Registration is FREE!

Screensize:
UserName:
Password:
Format Mode:
Format: BoldItalicizedUnderlineStrikethrough Align LeftCenteredAlign Right Horizontal Rule Insert HyperlinkInsert EmailInsert Image Insert CodeInsert QuoteInsert List
   
Message:

* HTML is OFF
* Forum Code is ON
Smilies
Smile [:)] Big Smile [:D] Cool [8D] Blush [:I]
Tongue [:P] Evil [):] Wink [;)] Clown [:o)]
Black Eye [B)] Eight Ball [8] Frown [:(] Shy [8)]
Shocked [:0] Angry [:(!] Dead [xx(] Sleepy [|)]
Kisses [:X] Approve [^] Disapprove [V] Question [?]

 
Note: please do not cross-post.
Cross-postings will be deleted and ignored.
Thanks for helping to keep this forum junk-free!
Check here to subscribe to this topic.
   

T O P I C    R E V I E W
St John Posted - 06/19/2010 : 12:55:59 PM
Hello,

I have recently started getting the following message appear when I start certain programs:


the ordinal 442 could not be located in the dynamic library oleaut32.dll

By OKing the message, I am able to run the program without a problem & it's nothing more than a minor nuisance. I would like to get it fixed, however, as something's not right.

The programs that cause the problem include:
Microsoft Powerpoint 2007
Cyberlink Power DVD


Do you have any suggestions?
7   L A T E S T    R E P L I E S    (Newest First)
cj_berlin Posted - 06/27/2010 : 05:12:20 AM
Great post, much appreciated. This would have been my 'other suggestion' as well but I've never found the time to write it down as neatly.
jmarquart Posted - 06/27/2010 : 02:00:23 AM
I have run into the ordinal issue before with other software. Basically what is occurring is two applications are expecting a different version of the same .dll/.ocx file. You need to have two versions of the .dll/.ocx file for the different software packages you are using. You can do this through dll re-direction or place the respective dll file associated with the application in the program directory where the application is located. I have attached an example walk-through below - just replace the software mentioned below with your Microsoft Powerpoint 2007 and Cyberlink Power DVD applications.

Note: You can't always fix this error because of the applications installed wanting a different version of the dll causing the ordinal error. You will either need to find an updated version of the software packages which may fix the issue or live without one of the applications.

Attempting to fix an ordinal problem:
________________________________________________________________________________________________________________________________

In regards to the new version of Track-IT it is causing some issues with WebTrends. I'm outlining the steps below as one way to deal with an .dll conflict version. This process isn't exactly well documented and obvious. We have been fortunate that this problem has not occurred on other servers, but it is very important to understand how to deal with it (when the issue occurs).

1. Installed a new version of Track-IT on server <servername>.
2. Crystal Reports was embedded into the installation and overwrote a 'C:\Windows\system32\libeay32.dll' that WebTrends was using.
3. This was easy for me to identify as when I tried to perform an upgrade to WebTrends I was receiving the error:

The ordinal 2821 could not be located in the dynamic link library LIBEAY32.dll.

4. Sometimes it's not so easy identifying which .dll's are being use by specific Windows processes. To help in the identification process you can use programs like Process Explorer (www.sysinternals.com) - click on the Find Handle or DLL menu and/or the program TaskInfo (http://www.iarsn.com/).
5. On further investigation I could see that in the Windows\system32 directory the libeay32.dll was a different version than the one that WebTrends originally installed (the libeay32.dll was the version that Crystal Reports installed).
6. Every night now Webtrends scheduled task processing would fail with the following event log on server <servername> (for multiple jobs being run):

Event Type: Error
Event Source: Application Error
Event Category: (100)
Event ID: 1000
Date: 2/29/2008
Time: 2:03:27 AM
User: N/A
Computer: <servername>
Description:
Faulting application wtSysMon.exe, version 8.0.1.23288, faulting module unknown, version 0.0.0.0, fault address 0x0013c34b.

7. At this point I can make a reasonable determination that the 'wtSysMon.exe' process for WebTrends (which is a service) depends on the correct version of the 'C:\Windows\system32\libeay32.dll' installed by WebTrends.
8. I renamed the current 'C:\Windows\system32\libeay32.dll' which Crystal Reports installed to libeay32(crystal).dll to see if this resolved the problem (also restored the libeay32.dll that WebTrends originally installed) and it did fix the issue.
9. The problem now is that Crystal Reports is looking for its version which no longer exists (this is the file libeay32(crystal).dll).
10. One way of trying to resolve the problem is to use .dll re-direction.
11. First I needed to find where the wtSysMon.exe was loading from which is in 'C:\Program Files\WebTrends\modules\tools'.
12. Next I need to copy the libeay32.dll that WebTrends installed into this directory.
13. To tell the wtSysMon.exe to look for the libeay32.dll in 'C:\Program Files\WebTrends\modules\tools' rather than 'c:\Windows\system32' create a 0-byte file in Notepad and save the name as wtSysMon.exe.local (the .local extension tells the wtSysMon.exe to look for all .dll files locally instead of 'C:\Windows\system32').
14. Partial Success - now looking at the event log nightly 3 out of the 4 tasks that run (that use wtSysMon.exe) succeed, but one still fails unfortunately.
15. The reason for the one task failing is that particular task probably calls the libeay32.dll AND another .dll that it's trying to find in the c:\Windows\system32 directory, but can no longer locate it (because of the wtSysMon.exe.local rename which tells wtSysMon.exe to ONLY look for .dll's in 'C:\Program Files\WebTrends\modules\tools').
16. The final solution currently is still to have the libeay32.dll that WebTrends installed located in 'C:\Windows\system32\' rather than the libeay32.dll that Crystal Reports installed.
17. The direction going forward is to see what breaks in how Track-IT uses Crystal Reports with the libeay32.dll and provide a similar solution as above with the hope that both Crystal Reports and WebTrends can work on the same system.
18. Obviously the easy approach is to separate this software onto different computers.

Other notes:
If executable programs (that are not services) need to access a different version of the same name .dll located in the C:\Windows\system32 directory a real easy way is to copy the specific .dll the executable program needs into the same program the directory launches from. Create a shortcut to the program and change the 'Start In:' input box to the directory the program launches from. I used to do that at my last job where we needed the ability to run different versions of Crystal Reports on the same computer that used different version(s) of an .ocx file (which used the same name and were stored in C:\Windows\system32).


Sometimes you may also get errors that relate to an invalid object. In this example I'm getting an error regarding the crystal.crystalreport object and I need to locate what .dll or .ocx file this is coming from:

1. First download the TLViewer:
http://www.tlviewer.org/tlviewer/tlviewer.htm
2. Load the TLViewer and select from the Search menu - By ProgID.
3. In the Helpstrings input box type in: Crystal.CrystalReport
4. Click on the Binoculars to perform a search.
5. This should find the crystl32.ocx file - you can then see all of the Crystal.CrystalReport objects/members in this file.
6. If you look then in the bottom pane at the TypeLib number - this should match what is in the registry.
7. Open regedit and do a search then for: {00025600-0000-0000-C000-000000000046}
8. This should find the registry key: HKEY_CLASSES_ROOT\CLSID\{00025600-0000-0000-C000-000000000046}\Typelib
9. Now look at the parent key name: HKEY_CLASSES_ROOT\CLSID\{00025601-0000-0000-C000-000000000046}
7. This value then matches with what is in:
HKEY_CLASSES_ROOT\Crystal.CrystalReport\CLSID.


You can also use ActiveX/COM Inspector (http://www.oaklandsoftware.com/product_compinsp3/product_3.html) instead of TLViewer to perform a similar search. I believe they also have a .Net Inspector for tracing out .Net assemblies. These are both free products:

http://www.oaklandsoftware.com/download.html
St John Posted - 06/26/2010 : 4:18:48 PM
Hi,

I was just wondering whether you might have any other suggestions?

St John Posted - 06/19/2010 : 3:37:50 PM
Hi there,

I tried to unregister the dll but got the following message:

The ordinal 442 could not be located in the dynamic link library OLEAUT32.dll

I ran cmd as an administrator in case this was an elevation issue but it still didn't work.
cj_berlin Posted - 06/19/2010 : 2:34:47 PM
Oh well, then maybe unregister it first and turn off UAC before doing this.
St John Posted - 06/19/2010 : 2:30:32 PM
Hi - I'd tried this before & I'm afraid it didn't work. I get the following error:

Error registering the OCX C:\Windows\System32\Oleaut32.dll

Thanks for the suggestions, though, but it's a bit more complex.
cj_berlin Posted - 06/19/2010 : 1:26:10 PM
quote:
Originally posted by St John


Do you have any suggestions?



Yes, I have one. Reinstall the VB6 runtime, found here:

http://download.microsoft.com/download/vb60pro/install/6/win98me/en-us/vbrun60.exe

Mark Minasi's Reader Forum © 2002-2011 Mark Minasi Go To Top Of Page
This page was generated in 0.12 seconds. Snitz Forums 2000