Topic: files required to get a) drag drop and b) file copy progress working in ADK PE  (Read 798 times)

0 Members and 1 Guest are viewing this topic.

dazza

  • Jr. Chef
  • **
  • Date Registered: Jan 2017
  • Posts: 27
Hi

I have created a "vanilla" PE (64-bit) from Windows 10 1709 ADK and got most things I want working

But I have the following requirements which I need help with if possible, as can't work out what files/registry keys are needed:-

a ) Drag Drop support
 
b ) File Copy progress dialog

I am currently using Explorer++ as my file explorer which works fine, but whatever tool I use I have both the above facilities missing


For a) I have tried everything mentioned on various posts I have found including adding below files and registry keys

system32\d3d11.dl

system32\DataExchange.dll

system32\dcomp.dll

system32\dxgi.dll

system32\ksuser.dll

Code: [Select]
Windows Registry Editor Version 5.00

;dataexchange.dll
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{9FC8E510-A27C-4B3B-B9A3-BF65F00256A8}]
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{9FC8E510-A27C-4B3B-B9A3-BF65F00256A8}\InProcServer32]
@=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,00,25,\
  00,5c,00,73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,64,00,61,00,\
  74,00,61,00,65,00,78,00,63,00,68,00,61,00,6e,00,67,00,65,00,2e,00,64,00,6c,\
  00,6c,00,00,00
"ThreadingModel"="Both"

;need update ACL rights for offline importing.
;or you can add this on WinPE startup.
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Ole\Extensions]
"DragDropExtension"="{9FC8E510-A27C-4B3B-B9A3-BF65F00256A8}"

For b ) File Copy Progress Dialog I have tried copying shellstyle.dll, explorerframe.dll and related MUI files, as per article I found but still not working


Any one managed to get either working in a standard PE built with ADK
« Last Edit: January 19, 2018, 05:44:04 AM by dazza »

slore

  • Jr. Chef
  • **
  • Date Registered: Jun 2016
  • Posts: 69
the dlls and registry tested on setup boot.wim(Windows 10.ISO), not the ADK.
you can try if it works on the boot.wim.

if it works fine, try to compare the orgin setup boot.wim with your ADK PE.

and for the progress dialog, someone tell me the WinRE.wim is already have it.

when I test the setup boot.wim, I find out it need:

Code: [Select]
Windows\System32\chartv.dll

and Interface\* registry.

60,000 Interface registry items I deleted and test, and safety remove 40, 000 items.
make a 180kb interface items for the progressbar.

but I didn't make the clear items. and all the 60,000 Interface items is only 600kb in compressed.
needn't waste the time for that.

I hope this will help you.
« Last Edit: January 19, 2018, 06:20:37 AM by slore »

dazza

  • Jr. Chef
  • **
  • Date Registered: Jan 2017
  • Posts: 27
Hi Slore

Thanks for responding

I tried a build using the WinRE.Wim as my source instead of the ADK winpe.wim - but still no copy progress dialog

Will try adding chartv.dll and see if that helps and report back later

As for registry by Interface\* do you mean HKEY_CLASSES_ROOT\Interface and all its sub keys?

dazza

  • Jr. Chef
  • **
  • Date Registered: Jan 2017
  • Posts: 27
Okay added HKEY_CLASSES_ROOT\Interface and all its sub keys, as well as adding chartv.dll and its mui file

Unfortunately still not file copy progress dialog

Will keep looking

slore

  • Jr. Chef
  • **
  • Date Registered: Jun 2016
  • Posts: 69
add DD feature with the DLLs and reg works fine.

add dlls and copy regfile to make boot.wim.
* add_DD_feature.zip (1520.21 kB - downloaded 9 times.)


test the DD feature in PE.

* test_DD_PE.zip (1249.79 kB - downloaded 9 times.)

they are GIF animation, please save as ... to your PC, and watch they.

EDITED(upload animations to github):

you can watch them in github.

https://github.com/slorelee/wimbuilder_sample/tree/master/DragAndDrop


https://github.com/slorelee/wimbuilder_sample/blob/master/DragAndDrop/add_DD_feature.gif

https://github.com/slorelee/wimbuilder_sample/blob/master/DragAndDrop/test_DD_PE.gif
« Last Edit: January 19, 2018, 08:29:58 PM by slore »

dazza

  • Jr. Chef
  • **
  • Date Registered: Jan 2017
  • Posts: 27
For whatever reason two different Windows 10 machines won't let me view the animated GIFs


dazza

  • Jr. Chef
  • **
  • Date Registered: Jan 2017
  • Posts: 27
Hi Slore


Thank you for creating the GIFs to show it works (managed to view them on GitHub), but unfortunately in the PE I create from either ADK winpe.wim or a winre.wim doing exactly the same as you doesn't work - so must be other dependencies for both Drag and Drop and for the File Copy Progress dialog

 Can provide link to my wim if it helps diagnose why not working for me

slore

  • Jr. Chef
  • **
  • Date Registered: Jun 2016
  • Posts: 69
no need your wim, because I use
sources\install.wim\1\Windows\System32\Recovery\winre.wim

to replace the boot.wim and remake the BOOTPE.ISO, this doesn't work as you said.

if I have time I will compare the files,regs in winre.wim with boot.wim see what need be added.

dazza

  • Jr. Chef
  • **
  • Date Registered: Jan 2017
  • Posts: 27
Okay now I am confused as I have also tried this using a WINRE.WIM from same location you mention - from a 64-bit Windows 10 1709 ISO file
 
Adding files and registry keys you mention didn't work - and I have tried it twice

Are you also using 64-bit?
 
Are you adding anything else to get other features at same time?
 
Must be something you are doing different to me because I have tried your instructions lots of times and every time it doesn't give me drag and drop

slore

  • Jr. Chef
  • **
  • Date Registered: Jun 2016
  • Posts: 69
https://github.com/slorelee/wimbuilder_sample/tree/master/DragAndDrop

I upload the worked process with winre.wim.

only add dcomp.dll,DataExchange.dll(others already in winre.wim) and explorer++.exe, and dd.reg.

yes, using the the x64-bit ISO and files.


D:\PB_Workspace\mnt\Winre.wim
MD5 Checksum: 76E39748CBE29EDC274D474B557A29FB
SHA-1 Checksum: 23E33347BE67242E7A95EF34502070A2C6CCA46F
SHA-256 Checksum: C835324A6B229B02B2095858B03A9A1A99ECDC838A53ADBD630F5A0FDE818946
SHA-512 Checksum: 86A00A336A3B75B6401E5EFF3C70905264B9318006B776B65A5BB02D3B9AF1700D77D05A71DB5960475362D04B48D6F088A5A00C8AA9A5272D098C12258F8205

dazza

  • Jr. Chef
  • **
  • Date Registered: Jan 2017
  • Posts: 27
winre.wim from en-gb_windows_10_multi-edition_version_1709_updated_sept_2017_x64_dvd_100090819.iso

MD5 = AA1021F192C797E4572EE8F0489568EB

Perhaps it is a language difference then - as my ISO en_gb and MD5 of winre.wim clearly different

slore

  • Jr. Chef
  • **
  • Date Registered: Jun 2016
  • Posts: 69
I download the en-gb_windows_10_multi-edition_version_1709_updated_sept_2017_x64_dvd_100090819.iso,

and do nothing change for this, it also works.



I don't know how you adding the two file to new wim file. maybe you should try with my wimbuilder.

(just simple dism.exe mount/unmount wim, and xcopy some files batch script, I don't know why your process didn't be worked.)



again, I upload the animation and use hash.exe to confirmed the MD5 value as yours.



https://github.com/slorelee/wimbuilder_sample/tree/master/DragAndDrop



DD_feature_WINRE(en_gb).gif   size:2MB  animation time:03'30




dazza

  • Jr. Chef
  • **
  • Date Registered: Jan 2017
  • Posts: 27
Okay I will try for the 20th time - but I don't do anything different than you

I mount image using DISM, copy files to system32 folder, unmounts committing changes

Then boot, double click reg file to import registry keys

Run explorer ++ and no drag / drop

To be honest the area I need working more is file copy progress dialog


dazza

  • Jr. Chef
  • **
  • Date Registered: Jan 2017
  • Posts: 27
Bingo - sorted it

Started completely from scratch with fresh WIM, fresh ISO download etc and it now works!!!

Was odd, must have been to do with my ISO, but it worked fine to build in winbuilder and to install Windows in virtual - so assumed not corrupt, but must have been

Thank you slore!!!!

Any ideas to get file copy progress dialog working as well?

slore

  • Jr. Chef
  • **
  • Date Registered: Jun 2016
  • Posts: 69
my research was in 2016 year, so I test the chartv.dll on v1607 and it works.

v1709 must be something changed.

I make a file diff with which one can have the progressdialog, and remove device manager(dmd*.dll), mmc*dl,

with my wimbuider, quickly found(1 hour) the require file is:
chartv.dll and a new one --- OneCoreUAPCommonProxyStub.dll

and export the registy(CLSID,INTERFACE) of this file, it worked.(reg file can be merged in booted PE, no need import in offline mode)

the patch --- ProgressDlg

ADD_ITEMS.txt
Code: [Select]
Windows\System\chartv.dll
Windows\System\OneCoreUAPCommonProxyStub.dll

ProgressDlg.reg
Code: [Select]
Windows Registry Editor Version 5.00


[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{95E15D0A-66E6-93D9-C53C-76E6219D3341}]
@="PSFactoryBuffer"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{95E15D0A-66E6-93D9-C53C-76E6219D3341}\InProcServer32]
@="x:\\Windows\\System32\\OneCoreUAPCommonProxyStub.dll"
"ThreadingModel"="Both"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Interface\{036B4FC7-6A11-4C07-8046-22D268C37721}]
@="IInterruptedOperationHandler"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Interface\{036B4FC7-6A11-4C07-8046-22D268C37721}\ProxyStubClsid32]
@="{95E15D0A-66E6-93D9-C53C-76E6219D3341}"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Interface\{04B0F1A7-9490-44BC-96E1-4296A31252E2}]
@="IFileOperationProgressSink"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Interface\{04B0F1A7-9490-44BC-96E1-4296A31252E2}\ProxyStubClsid32]
@="{95E15D0A-66E6-93D9-C53C-76E6219D3341}"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Interface\{0C9FB851-E5C9-43EB-A370-F0677B13874C}]
@="IOperationsProgressDialog"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Interface\{0C9FB851-E5C9-43EB-A370-F0677B13874C}\ProxyStubClsid32]
@="{95E15D0A-66E6-93D9-C53C-76E6219D3341}"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Interface\{4AE7498C-E1C0-475F-8573-41C26127C5D8}]
@="IOperationStatusTile"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Interface\{4AE7498C-E1C0-475F-8573-41C26127C5D8}\ProxyStubClsid32]
@="{95E15D0A-66E6-93D9-C53C-76E6219D3341}"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Interface\{61A969EF-64EA-4C48-BBF5-EEDE3B32BF86}]
@="IOperationStatusService"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Interface\{61A969EF-64EA-4C48-BBF5-EEDE3B32BF86}\ProxyStubClsid32]
@="{95E15D0A-66E6-93D9-C53C-76E6219D3341}"


with this research I finally figure out the minimal registry items of the INTERFACE.

try yourself, I have no time for uploading a gif animation this time.

dazza

  • Jr. Chef
  • **
  • Date Registered: Jan 2017
  • Posts: 27
You @Slore are an absolute genius!! - thank you so much for all you help on this - I can also confirm that copy progress dialog now works for me :)


 

Powered by EzPortal