Side-by-side configuration is incorrect - From WinPE 2.0

matt7

New Member
So here is the problem I am currently having. I am trying to find another way to wipe our hard drives that is a much faster, easier way. Right now, all drives are encrypted with Sophos Safeguard 5.50. Sophos offers a utility, BEInvVol.exe (SafeGuard Enterprise: How to decomission a volume-based encrypted disk.) that deletes the encryption keys off of the drive. Since these keys are not backed up, if they are deleted, the information on the drive can never be recovered. Essentially, it is as good as wiping the drive. Only it'll work much faster than using a wipe utility.

Now, when I boot into our WinPE 2.0 disk, and I try to run BEInvVol.exe, I get this error "The application has failed to start because its side-by-side configuration is incorrect. Please see the application event log for more detail." I've done a lot of searching around, and have decyphered this cryptic message: I am missing certain libraries that this program needs to run. Specifically, when looking at the exe's hex code, and when running the program using sxstrace, I see I need the library for "Microsoft Visual C++ 2005 SP1 Redistributable Package (x86)" which can be found at Download Details - Microsoft Download Center - Visual C++ 2005 SP1 Redistributable Package (x86) Now, here it the problem: I am running WinPE. I can't run this installer in that environment. When I try and run vcredist_x86.exe (the installer for C++ 2005 SP1) after WinPE 2.0 has booted up, I get this error "Error creating process <msiexec /i vcredist.msi> Reason: The system cannot find the file specified"

Now, here is the output when I have sxstrace running in another cmd window in WinPE 2.0:

Code:
=================
Begin Activation Context Generation.
Input Parameter:
	Flags = 0
	ProcessorArchitecture = x86
	CultureFallBacks = en-US;en
	ManifestPath = X:\beinvvol.exe
	AssemblyDirectory = X:\
	Application Config File = 
-----------------
INFO: Parsing Manifest File X:\beinvvol.exe.
	INFO: Manifest Definition Identity is (null).
	INFO: Reference: Microsoft.VC80.CRT,processorArchitecture="x86",publicKeyToken="1fc8b3b9a1e18e3b",type="win32",version="8.0.50727.762"
INFO: Resolving reference Microsoft.VC80.CRT,processorArchitecture="x86",publicKeyToken="1fc8b3b9a1e18e3b",type="win32",version="8.0.50727.762".
	INFO: Resolving reference for ProcessorArchitecture x86.
		INFO: Resolving reference for culture Neutral.
			INFO: Applying Binding Policy.
				INFO: No publisher policy found.
				INFO: No binding policy redirect found.
			INFO: Begin assembly probing.
				INFO: Did not find the assembly in WinSxS.
				INFO: Attempt to probe manifest at X:\windows\assembly\GAC_32\Microsoft.VC80.CRT\8.0.50727.762__1fc8b3b9a1e18e3b\Microsoft.VC80.CRT.DLL.
				INFO: Attempt to probe manifest at X:\Microsoft.VC80.CRT.DLL.
				INFO: Attempt to probe manifest at X:\Microsoft.VC80.CRT.MANIFEST.
				INFO: Attempt to probe manifest at X:\Microsoft.VC80.CRT\Microsoft.VC80.CRT.DLL.
				INFO: Attempt to probe manifest at X:\Microsoft.VC80.CRT\Microsoft.VC80.CRT.MANIFEST.
				INFO: Did not find manifest for culture Neutral.
			INFO: End assembly probing.
	ERROR: Cannot resolve reference Microsoft.VC80.CRT,processorArchitecture="x86",publicKeyToken="1fc8b3b9a1e18e3b",type="win32",version="8.0.50727.762".
ERROR: Activation Context generation failed.
End Activation Context Generation.


===================
Now, I should also mention, that I can run this utility when I have booted into good ol' Windows Xp SP3. However, the utility has to run in WinPE. Here is the error message I get when I run it in Windows XP SP3:

&Info: SGN filter driver on
Error: SGN filter driver may not be on!
Use other system to start like Windows PE from a CD!

So the program does need to be run from WinPE. Now, The folder on my machine where these DLLs live is "C:\WINDOWS\WinSxS\x86_Microsoft.VC80.CRT_1fc8b3b9a1e18e3b_8.0.50727.762_x-ww_6b128700" I copied this directory over to the same directory on the machine after it has booted to WinPE. I copy it over to the X: drive, which is the RAM, which is where the OS is booting from. Still no good. Tried copying it to "X:\windows\assembly\GAC_32\Microsoft.VC80.CRT\8.0.50727.762__1fc8b3b9a1e18e3b\Microsoft.VC80.CRT.DLL" as well, but that didn't fix the issue.

Now, there are two solutions that I can figure out.

  1. The C++ 2005 installer, vcredist_x86.exe, might not just create C:\WINDOWS\WinSxS\x86_Microsoft.VC80.CRT_1fc8b3b9a1e18e3b_8.0.50727.762_x-ww_6b128700 with the 3 DLLs in it; it might do more. So, if it does do more, maybe I need to copy those extra files over to the X drive and that would solve the problem.
  2. Or, these DLLs need to be there when WinPE first boots up, which means I need to build a new WinPE disk and have it include these libraries.

I've never built a WinPE boot disk before, but I've been taking some steps to learn how. I have Microsoft Windows AIK installed, and I can make a boot disk (by following some instructions). However, I need it customized to have these added libraries. I kinda know/can figure out how to do this, but I see a slight problem with it: If I just include the DLLs, maybe I'm still missing some things that the installer adds. So, is there a way I can create a custom WinPE 2.0 boot disk that uses the C++ 2005 package installer (vcredist_x86.exe), so when the disk is made, it includes everything that vcredist_x86.exe would normally add?


Sorry for the long post, but its always good to have more information than less. Also, I tried this on a WinPE boot disk that is running 3.0. Still the same problem.


So to recap, I need Microsoft Visual C++ 2005 SP1 libraries to run a program off of a WinPE 2.0 disk. I've added the libraries from the C:\WINDOWS\WinSxS\x86_Microsoft.VC80.CRT_1fc8b3b9a1e18e3b_8.0.50727.762_x-ww_6b128700 onto the same folder on the X: drive directly, and that didn't solve the issue. Maybe I'm missing some other files that I need to copy over? I'm not sure. Or, I need to build a new WinPE boot disk that includes all of the libraries that the vcredist_x86.exe package installs.

Thanks for any and all help!
 

My Computer

niemiro

Banned
Hello, and welcome to the Vista Forums!

Your tactical friending worked! I didn't see this thread before now! Really sorry for the delay!

VC++ 2005 SP1 contains 96 files.

Looking through their dependencies, there isn't actually anything too non-core. All of the dependancies may actually already exist on WinPE 3.1.

I shall see if I can get this to work on WinPE 2.0 and 3.1. I can't guarantee success, but I will give it my best shot.

I know you want this quickly, but the best way will be to mod the actual disk prior to running it.

I shall see if I make any headway, and report back in a day or two.

Thanks for giving a detailed post :) It really is very helpful!

Richard
 

My Computer

System One

  • Manufacturer/Model
    Dell XPS 420
    CPU
    Intel Core 2 Quad Q9300 2.50GHz
    Motherboard
    Stock Dell 0TP406
    Memory
    4 gb (DDR2 800) 400MHz
    Graphics Card(s)
    ATI Radeon HD 3870 (512 MBytes)
    Sound Card
    Onboard
    Monitor(s) Displays
    1 x Dell 2007FP and 1 x (old) Sonic flat screen
    Screen Resolution
    1600 x 1200 and 1280 x 1204
    Hard Drives
    1 x 640Gb (SATA 300)
    Western Digital: WDC WD6400AAKS-75A7B0

    1 x 1Tb (SATA 600)
    Western Digital: Caviar Black, SATA 6GB/S, 64Mb cache, 8ms
    Western Digital: WDC WD1002FAEX-00Z3A0 ATA Device
    PSU
    Stock PSU - 375W
    Case
    Dell XPS 420
    Cooling
    Stock Fan
    Mouse
    Advent Optical ADE-WG01 (colour change light up)
    Keyboard
    Dell Bluetooth
    Internet Speed
    120 kb/s
    Other Info
    ASUS USB 3.0 5Gbps/SATA 6Gbps - PCI-Express Combo Controller Card (U3S6)

matt7

New Member
Thanks for the reply. However, I did post this in a few other forums, and one reply that I got in this thread Side-by-side configuration is incorrect - From WinPE 2.0 turned out to work!

The fix was to place the DLLs and the .manifest file in the same directory as the BEInvVol.exe application. Not sure if I actually need the .amnifest file, but it doesn't hurt. I put those files on the X: drive (RAM, where WinPE OS lives), and was able to run the .exe

To make this easier, I'll probably end up learning how to make a WinPE 2.0 boot disk with these files already loaded on the disk, but if you want to post anything that would make this easier or any other resources, go ahead and let me know.
 

My Computer

Top