Solved

Dependency walker and VC++ 2010 redist

Posted on 2014-01-21
8
875 Views
Last Modified: 2014-01-21
Hi Experts,
I'm trying to run NSS certutil without installing the VC++2010 redist that it requires by placing the DLLs it needs in the same folder as my exe.  We have no choice- we cannot run the installer as standard user without elevating to admin.

That being said, I've copied the following DLLs to the same folder as certutil.exe (an exe from NSS):  [ mfc100.dll, mfc100u.dll, msvcr100.dll, msvcp100.dll, msvcr100_clr0400.dll ]

I am still not able to execute certutil.exe properly - getting an exception at startup (Exception 0xc000007b).

Dependency walker has various errors:
- At least one module has an unresolved import due to a missing export function in an implicitly dependent module
- Modules with different CPU types were found.

I got my DLLs from the C:\WINDOWS\SYSTEM32 folder of a virtual machine with the exact same image of my current machine (with the VC++ 2010 redist installed).  So I'm wondering if the different CPU type error is a false positive.

There are 2 DLLs directly below my exe in dependency walker shown in red (MSVCR100.DLL and KERNEL32.DLL).

Do I have to include every single DLL that is in red in other subtrees as well?  How much faith should I put in dependency walker?

Thanks for any help!
Mike
0
Comment
Question by:thready
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 4
  • 4
8 Comments
 
LVL 1

Author Comment

by:thready
ID: 39797188
Here's what shows in dependency walker.  Note that the nodes directly below Certutil (NSSUtil3.dll, etc) also have some red nodes when expanded as well, but the bulk of it seems to be what I'm showing in the image...
depends.png
0
 
LVL 86

Accepted Solution

by:
jkr earned 500 total points
ID: 39797270
'0xc000007b' in fact is 'STATUS_INVALID_IMAGE_FORMAT', so it seems that this isn't a false positive. Yet the reason can be something simple, you will get that message as well when opening a x86 module with the x64 version of the Dependency Walker and vice versa. Could that be the case? I.e. if you are examining a x86 module, don't use the x64 depends.exe.
0
 
LVL 86

Expert Comment

by:jkr
ID: 39797274
Oh, and if that still is an issue, try DW's 'Save as...' option to save and post a .dwi file, that gives much more information than a screenshot.
0
PeopleSoft Has Never Been Easier

PeopleSoft Adoption Made Smooth & Simple!

On-The-Job Training Is made Intuitive & Easy With WalkMe's On-Screen Guidance Tool.  Claim Your Free WalkMe Account Now

 
LVL 1

Author Comment

by:thready
ID: 39797275
That's right - I'm using the wrong dependency walker then.  COOL.  I'll be back!  (said like Arnold).
0
 
LVL 1

Author Closing Comment

by:thready
ID: 39797334
Wow.  Nice clean dependency walker now.  Problem fixed.  Thanks yet again.  How many beers is that?  :o)
0
 
LVL 86

Expert Comment

by:jkr
ID: 39797339
Still way too eary for beer for me :-D - a tall Cappuccino maybe?
0
 
LVL 1

Author Comment

by:thready
ID: 39797552
It's past noon in some parts of the world....
0
 
LVL 86

Expert Comment

by:jkr
ID: 39797579
Noon would still be too early for beer - for me only after dinner ;o)
0

Featured Post

Free Tool: Postgres Monitoring System

A PHP and Perl based system to collect and display usage statistics from PostgreSQL databases.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

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

For a while now I'v been searching for a circular progress control, much like the one you get when first starting your Silverlight application. I found a couple that were written in WPF and there were a few written in Silverlight, but all appeared o…
For most people, the WrapPanel seems like a magic when they switch from WinForms to WPF. Most of us will think that the code that is used to write a control like that would be difficult. However, most of the work is done by the WPF engine, and the W…
The goal of the tutorial is to teach the user how to use functions in C++. The video will cover how to define functions, how to call functions and how to create functions prototypes. Microsoft Visual C++ 2010 Express will be used as a text editor an…
The goal of the video will be to teach the user the difference and consequence of passing data by value vs passing data by reference in C++. An example of passing data by value as well as an example of passing data by reference will be be given. Bot…

756 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