Topic: latest release syswow64 and hddscan issue  (Read 3546 times)

latest release syswow64 and hddscan issue
« on: April 13, 2016, 07:58:34 PM »

tty6

  • Apprentice
  • *
  • Date Registered: Apr 2016
  • Posts: 4
Hi,

I built an 8.1 PE SE image with minimal modification a little while ago, and then used that as a source to spin a few other more heavily modded images. I then decided, a month or so ago, to run the internal update for winbuilder with the official repository for the PE SE 8.1 project. After rebuilding the image, I was no longer able to run hddscan.

Upon trying to start hddscan (version 3.3 from the official site - I can't post an external link), I get a "shdocvw.dll" missing error - and indeed it is missing. Manually copying the file to the syswow64 folder is insufficient, as another error is thrown presumably due to other missing libraries (I have not checked which ones are missing, but I can get a list of deps if need be). However, I have the same build configuration for both projects as far as I can see (a few config settings got reset after the update and I had to manually adjust).

Project selections are attached to this post.

Unfortunately I did not make a note of the original version of the PE SE 8.1 project I was working with for the build that did work. Just to make clear - I initially ran into the issue when I updated the project using the update function. I then thought perhaps the updater was buggy or something breaks during the update process, so I tried to do a sanity check by downloading the Win8.1SE_2016-04-08 release and copying all project settings manually and building from scratch, but the issue reappeared.

I generated a folder diff of the working image and one with the project updates applied and rebuilt. PDF attached.

You can see in the diff that there are files that are missing from the newer build. I cannot find any difference in the project configuration, so unless I missed something, it almost seems like the latest release of the PE SE 8.1 project does not include all the files related to syswow64 (possibly others?).

I was initially building the project(s) on a separate drive on a Windows 7 x64 box but noticed that for some reason a few copies of my different project spins had some paths hardcoded. I figured it was something I did (you can do weird things when you have little time and you're feeling frustrated) so I archived it all, spun up a new Windows 7 x64 VM with a clean 8.1 Enterprise Eval image and a clean project --- same issue.

TL;DR: Can't run HDDScan on Win8.1SE_2016-04-08 release's build of PE SE from 8.1 Enterprise Eval source with Syswow64 and most 'features' enabled.

Re: latest release syswow64 and hddscan issue
« Reply #1 on: April 13, 2016, 09:32:58 PM »

tty6

  • Apprentice
  • *
  • Date Registered: Apr 2016
  • Posts: 4
Update (can't edit original post - sorry): Manually copied SysWOW64 from the working image to the non-working one and HDDScan starts up fine. So something gets broken there per my suspicion.

Re: latest release syswow64 and hddscan issue
« Reply #2 on: April 14, 2016, 08:10:21 AM »

ChrisR

  • XPE Baker
  • Grand Chef
  • *****
  • Date Registered: Mar 2011
  • Posts: 3494
WoW64 basic plugin has not changed for 8.1SE.

There is a plugin available on the Downloads folder. Available after an initial building.
Downloads\HD Tasks\Diagnostic\HDDScan  v3.3
The plugin adds shdocvw.dll and cryptui.dll in sysWoW64 for x64 build.
I guess thhey were probably added by another plugin in your previous building

ps: you need 10 posts to edit
« Last Edit: April 14, 2016, 08:11:42 AM by ChrisR »

Re: latest release syswow64 and hddscan issue
« Reply #3 on: April 14, 2016, 04:12:59 PM »

tty6

  • Apprentice
  • *
  • Date Registered: Apr 2016
  • Posts: 4
WoW64 basic plugin has not changed for 8.1SE.

There is a plugin available on the Downloads folder. Available after an initial building.
Downloads\HD Tasks\Diagnostic\HDDScan  v3.3
The plugin adds shdocvw.dll and cryptui.dll in sysWoW64 for x64 build.
I guess thhey were probably added by another plugin in your previous building

ps: you need 10 posts to edit

Something must have changed, because I did not include any custom apps into the project. The only difference that should have happened was that I used the more up to date project build with the identical configuration. If you take a look at the diff list, quite a few files are different between the builds. Or am I missing something?

Re: latest release syswow64 and hddscan issue
« Reply #4 on: April 14, 2016, 08:01:33 PM »

ChrisR

  • XPE Baker
  • Grand Chef
  • *****
  • Date Registered: Mar 2011
  • Posts: 3494
ok ok, I looked at your diff list.
It's easier for me to have both support log (Main configuration >  Create support log). I use Beyond Compare on my side, matter of habit.

So, your config is not really the same  :wink:, Runscanner 1.0.0.28 is selected in your previous build, but not in the new build, following the addition of Runscanner 2.0.0.0 in latest package
In Runscanner 1.0.0.28 plugin, there is the macro "Require,File,BrowseForFolder" that adds shell32.dll, shdocvw.dll, cryptui.dll, browseui.dll dependencies.

Regardless, you(we) must add the required dependencies in HDDScan plugin, for it to work with or without Runscanner.
In general, each plugin must have its  own dependencies to be able to work with a basic building and without other additions.

Use Downloads\HD Tasks\Diagnostic\HDDScan, it already adds shdocvw.dll, cryptui.dll  :thumbsup:

Re: latest release syswow64 and hddscan issue
« Reply #5 on: April 14, 2016, 10:01:32 PM »

tty6

  • Apprentice
  • *
  • Date Registered: Apr 2016
  • Posts: 4
Thank you for the input. I rebuilt the project with the older "runscanner" enabled and hddscan starts fine and the libraries got copied. It does look like the update deselected the old runscanner, thus breaking hddscan when I loaded it from a portable apps folder. I had initially wrongly assumed that all SysWOW64 libraries and generic windows libraries would be included with my selection of the SysWOW64 and runtimes in the builder.

I run most of my apps as portable, and access them via asuite, and this is how I was trying to run hddscan. I guess I will have to check deps for each of these to make sure all deps are included.

I will do a bit more testing but it looks like we found the issue/solution here. Thank you very much for your help so far.

Re: latest release syswow64 and hddscan issue
« Reply #6 on: April 15, 2016, 08:08:01 AM »

ChrisR

  • XPE Baker
  • Grand Chef
  • *****
  • Date Registered: Mar 2011
  • Posts: 3494
:thumbsup:

To go a bit further, in WinPE, for System32, SysWoW64, it is a matter of compromise.
If it is too rich, boot.wim grows and then it is slower at startup. Also, it needs and consume more Ram.
At the opposite, if it is not rich enough it may miss some functions and it becomes difficult for users to easily add some programs or portable apps.

If a librarie is used by many apps around, it is good to ask whether it is good to add it to the base or not.
Conversely, it is not good to add deps if it is only used by few apps. For those who do not use and therefore do not need.

If you prefer to use as you do and without runscanner 1.0.0.28,
you can use "Additional Files" plugin or add a plugin like that
Code: [Select]
// System32 dependencies
//Require_FileQ,xxxxx.dll
//-
// SysWoW64 dependencies for 32 bits apps on x64
Set,%PluginArch%,x86
Require_FileQ,shdocvw.dll
Require_FileQ,cryptui.dll

Re: latest release syswow64 and hddscan issue
« Reply #7 on: April 15, 2016, 11:37:49 AM »

Lancelot

  • Gena Baker
  • Grand Chef
  • *****
  • Date Registered: Sep 2010
  • Posts: 10350
Thank you for the input. I rebuilt the project with the older "runscanner" enabled and hddscan starts fine and the libraries got copied. It does look like the update deselected the old runscanner, thus breaking hddscan when I loaded it from a portable apps folder.
not all swimming creature is fish, there are mammals and others...
with other words: your observation is correct, your conclusion was not  :wink:

I run most of my apps as portable, and access them via asuite, and this is how I was trying to run hddscan. I guess I will have to check deps for each of these to make sure all deps are included.
as ChrisR stated,
plugins there include dependencies.
That is the plugins superiority over portables...
Also you can get information about known dependencies of an app from its plugin (like hdd scan plugin pointed by ChrisR)
 which you can easily use for your portable usage....



For portable apps usages, you must assure you have dependencies.

We already provide solutions for that:
*
You can create a new plugin
Utils\PC Packed -> e button at right down
and add lines you like.....

*
For file dependencies of portable applications:
\Downloads\ComponentsY\Additional Requirements

*
For registry dependencies of portable applications:
(serials, settings etc..)
\Downloads\Final_Y\Additional Registry

:turtle:

 

Powered by EzPortal