无忧启动论坛

标题: (更新支持虚拟化程序)Win10X64中运行32位程序的临时办法 [打印本页]

作者: yamingw    时间: 2015-9-27 11:39
标题: (更新支持虚拟化程序)Win10X64中运行32位程序的临时办法
本帖最后由 yamingw 于 2015-11-9 10:30 编辑

更新可以生成dll列表,支持部分虚拟化程序,有些虚拟化程序需要X:\Windows\SysWOW64\config\systemprofile。
我测试了几个虚拟化程序,在正常系统里基本都不能正常运行,看来虚拟化程序本身还是有局限性的。
源码基本是拷贝ReactOS的smss里的创建KnwonDlls部分,和正常Win10生成的列表稍有不同,但不影响使用。
运行setwow64即可。ntoskrnl在初始化阶段1检测如果是运行在内存中的WinPE,就不创建KnownDlls32内核对象。此对象内容由SMSS填充。系统初始化32位应用时找不到此对象中的路径即报错。
源码仅供参考。

setWOW64v2.zip

7.22 KB, 下载次数: 625, 下载积分: 无忧币 -2

wow.7z

1.08 MB, 下载次数: 309, 下载积分: 无忧币 -2


作者: mdyblog    时间: 2015-9-27 11:49
只能少数程序吧。
毕竟需要 哪些 实实在在的 WOW64-DLL 来运行。
作者: 826773297    时间: 2015-9-27 12:40
期待测试结果出来
作者: 826773297    时间: 2015-9-27 12:40
期待测试结果出来
作者: amd0087    时间: 2015-9-27 13:43
强大 赶紧测试
作者: sp_star    时间: 2015-9-27 13:51
厉害!真的可以运行了。
作者: 2012hzy6420    时间: 2015-9-27 13:53
xxfx谢谢分享
作者: andos    时间: 2015-9-27 13:59
看到上面有人说可以运行,是一大突破呢

不知道原理是什么?

如果能够直接令WIN10PE X64 直接支持WOW64就更佳了
作者: shuren    时间: 2015-9-27 14:02
在这个Win10PE64中运行无效,没有反应

测试用的Win10PE64:
[原创] Windows10 10240 PE x86+64(2015.9.18更新)
http://bbs.wuyou.net/forum.php?m ... page%3D1&page=1
作者: sp_star    时间: 2015-9-27 14:22
shuren 发表于 2015-9-27 14:02
在这个Win10PE64中运行无效,没有反应

测试用的Win10PE64:

你测试的这个,可能本身就没有wow64只系统。楼主的程序应该是破解,而不是代替wow64
作者: shuren    时间: 2015-9-27 14:33
sp_star 发表于 2015-9-27 14:22
你测试的这个,可能本身就没有wow64只系统。楼主的程序应该是破解,而不是代替wow64

请问可以用哪个Win10PE64测试?
作者: sp_star    时间: 2015-9-27 14:36
shuren 发表于 2015-9-27 14:33
请问可以用哪个Win10PE64测试?

这个不太好找,之前不支持32位程序,发布的PE应该都不带这一块,可以减少体积啊。
作者: 826773297    时间: 2015-9-27 15:16
mdyblog 发表于 2015-9-27 11:49
只能少数程序吧。
毕竟需要 哪些 实实在在的 WOW64-DLL 来运行。

等待你的Pecmd更新
作者: 826773297    时间: 2015-9-27 15:17
sp_star 发表于 2015-9-27 14:36
这个不太好找,之前不支持32位程序,发布的PE应该都不带这一块,可以减少体积啊。

你的win10pe制作工具也该更新了
作者: 826773297    时间: 2015-9-27 15:19
sp_star 发表于 2015-9-27 14:36
这个不太好找,之前不支持32位程序,发布的PE应该都不带这一块,可以减少体积啊。

突破了这个重大难关相信其他问题也能更快解决
作者: andos    时间: 2015-9-27 15:37
sp_star 发表于 2015-9-27 14:22
你测试的这个,可能本身就没有wow64只系统。楼主的程序应该是破解,而不是代替wow64

0906版Builder 生成的不行呢
作者: sp_star    时间: 2015-9-27 15:56
826773297 发表于 2015-9-27 15:19
突破了这个重大难关相信其他问题也能更快解决

还有什么其他问题吗?
作者: sp_star    时间: 2015-9-27 15:56
andos 发表于 2015-9-27 15:37
0906版Builder 生成的不行呢

里面有wow64的脚本吗?
作者: 826773297    时间: 2015-9-27 16:01
sp_star 发表于 2015-9-27 15:56
还有什么其他问题吗?

还有很多问题啊,我看看
作者: andos    时间: 2015-9-27 16:05
本帖最后由 andos 于 2015-9-27 17:53 编辑
sp_star 发表于 2015-9-27 15:56
里面有wow64的脚本吗?


是啊...没有


作者: andos    时间: 2015-9-27 17:53
本帖最后由 andos 于 2015-9-27 18:22 编辑
sp_star 发表于 2015-9-27 15:56
里面有wow64的脚本吗?

WOW64脚本 要再补一个windows.storage.dll 文件才可以运行32位程序

但用了WOW64脚本后启动过程中会出现这个错误问题
怎样解决?


作者: sp_star    时间: 2015-9-27 18:46
andos 发表于 2015-9-27 17:53
WOW64脚本 要再补一个windows.storage.dll 文件才可以运行32位程序

但用了WOW64脚本后启动过程中会出 ...

是的,几乎所有gui程序都要windows.storage.dll,不知道还缺不缺别的。
作者: 赤木刚宪    时间: 2015-9-27 18:55



感谢LZ,获得了新生。

现在还剩下一个IE闪屏的问题了。
作者: sp_star    时间: 2015-9-27 19:04
andos 发表于 2015-9-27 17:53
WOW64脚本 要再补一个windows.storage.dll 文件才可以运行32位程序

但用了WOW64脚本后启动过程中会出 ...

那是因为启动时还没执行setwow64.exe,试试放在PECMD.INI开始的地方执行。
作者: andos    时间: 2015-9-27 19:05
sp_star 发表于 2015-9-27 18:46
是的,几乎所有gui程序都要windows.storage.dll,不知道还缺不缺别的。

但用了WOW64脚本后启动过程中会出现这个错误问题
怎样解决?


作者: andos    时间: 2015-9-27 19:30
sp_star 发表于 2015-9-27 19:04
那是因为启动时还没执行setwow64.exe,试试放在PECMD.INI开始的地方执行。

的确,我一时大意了
作者: 2011npwjm    时间: 2015-9-27 19:59
下载看看,谢谢分享
作者: tzxinqing    时间: 2015-9-27 21:05
强大 赶紧测试
作者: fish2006    时间: 2015-9-27 23:51
非常完美,32位 PPLIVE 运行正常!谢谢 yamingw 大师!这次可为中国的 PE 爱好者挣了光!


作者: andos    时间: 2015-9-28 07:47
mdyblog 发表于 2015-9-27 11:49
只能少数程序吧。
毕竟需要 哪些 实实在在的 WOW64-DLL 来运行。


当然没有WOW64-DLL支持是运行不了32位程序
其实是像Win8.1PE/8.1 RAMOS 那样的,只是WIN10PE被MS和谐了WOW64
只要SysWoW64内的DLL齐全的话,就可以像Win8.1PE/8.1 RAMOS那样运行32位程序了
初步测试,我在PE用的那些32位程序都可以运行

或者你也可以给PECMD加个参数/命令来创建一下KnownDlls32内核对象,这样更方便了
楼主说的我想你应该看的懂的,呵呵~~
作者: 826773297    时间: 2015-9-28 08:14
这个软件确实不错啊,又来了折腾的欲望了,!!!给力
作者: hhh333    时间: 2015-9-28 08:32
这可是一个大贡献,没有wow64的win10pe64就有点残废。
作者: 2012qnmd    时间: 2015-9-28 08:43
hhh333 发表于 2015-9-28 08:32
这可是一个大贡献,没有wow64的win10pe64就有点残废。

整个最小,支持office2007的,WOW64 吧

你的2007,虽然能安装,启动,但是,无法正常打开文件,估计WOW64文件支持不够.


作者: 2012qnmd    时间: 2015-9-28 08:43
RAMOS ,C盘,测试也通过.
作者: 2012mshs    时间: 2015-9-28 19:54
How to use it?
作者: yamingw    时间: 2015-9-28 20:14
just run it
作者: 2012mshs    时间: 2015-9-28 20:18
yamingw 发表于 2015-9-28 20:14
just run it

Thank you so much! :)
作者: WAIGO    时间: 2015-9-29 08:16
本来暂时不打算制作64位 Win10 PE ,有了这个破解程序,又勾起研究和制作的兴趣了。谢谢楼主!
作者: 2012qnmd    时间: 2015-9-29 09:06
此帖应该置顶啊...............

谁弄下
作者: 2012zhd    时间: 2015-9-29 09:11
这个贡献太大了。
作者: zqjiang    时间: 2015-9-29 16:24
好期待哦   
作者: fryquez    时间: 2015-9-29 20:55
@yamingw

is it possible to also add KnownDlls32 Sections?


作者: yamingw    时间: 2015-9-30 02:22
yes,we can.but what need the list?
作者: fryquez    时间: 2015-9-30 04:39
Some applications like VMWare ThinApp virtualized programs or Paragon Partition Manager 12 need these.
If the KnownDlls32 sections missing, these program can still not find the dlls.

In normal Windows smss.exe will create these by using the list inside

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\KnownDLLs
作者: tegl    时间: 2015-9-30 18:45
赞,感谢分享宝贵经验
作者: sp_star    时间: 2015-10-13 19:14
突然想起一个问题,路径%windir%\syswow64能不能改成自定义呢?
作者: yamingw    时间: 2015-10-13 21:07
sp_star 发表于 2015-10-13 19:14
突然想起一个问题,路径%windir%\syswow64能不能改成自定义呢?

不可以,系统初始化时从%SystemRoot%\SysWOW64下装载ntdll。运行32位应用时由ntdll负责装载其他dll,所以定义到其他文件夹没有用。一楼所发附件可带一命令行,如setwow64 c:\wow64,可将路径改为c:\wow64。我已试过,应该无用。
作者: sp_star    时间: 2015-10-13 22:05
呵呵,楼主早就考虑过了啊。这样确实不能工作。
作者: yfwang0798    时间: 2015-10-19 15:05
在国外ChrisR 制作的win10se ,其中JFX写的5-Wow64.script脚本,解释了SetWOW64的用途
SetWOW64 by yamingw. It works by creating the KnownDlls32 kernel object and linking it against X:\Windows\SysWow64 folder. It

~does what smss.exe should do. Note that it does not allow ThinApp packages to work.

并给出了脚本,使用winbuilder初步测试,64位win10se的确可以运行32位应用程序,非常感谢。
作者: yamingw    时间: 2015-11-9 10:38
多个功能总比没有好,谁需要拿去。
作者: fryquez    时间: 2015-11-10 15:24
setWOW64v2 is perfect, thank you.
作者: cakeandjam    时间: 2015-11-10 17:34
thank you
作者: yamingw    时间: 2015-11-10 17:47
2011frg521 发表于 2015-11-9 16:40
@yamingw
is it possible to also add KnownDlls32 Sections?
关于这个不需要手工创建,只需将程序编译成n ...

SetupExecCommand早于KnwonDlls执行。
我试过,好像native程序无法运行,不清楚什么原因。
作者: ljycslg    时间: 2015-11-14 15:32
大师求破解下10586的drvinst签名限制
drvinst.rar (53.47 KB, 下载次数: 18)
作者: yamingw    时间: 2015-11-14 21:18
ljycslg 发表于 2015-11-14 15:32
大师求破解下10586的drvinst签名限制

64位从win81到win10,用16进制编辑器如ultraedit、winhex打开DRVINST.exe,查找
8B D8 85 C0 75 08 8B 06     替换为
33 C0 8B D8 90 90 8B 06
作者: sp_star    时间: 2015-11-14 21:50
MARK一下,以后好找。
作者: freesoft00    时间: 2015-11-15 05:28
yamingw 发表于 2015-11-14 21:18
64位从win81到win10,用16进制编辑器如ultraedit、winhex打开DRVINST.exe,查找
8B D8 85 C0 75 08 8B 0 ...

32位的如何修改呢?
作者: yamingw    时间: 2015-11-15 13:17
freesoft00 发表于 2015-11-15 05:28
32位的如何修改呢?

32位可用SystemsetupInProcess=0略过.
如果非要改,需要改两个文件。ver10240,pnpui随版本不同而不同
Drvinst:
8B F8 85 FF 75 0B 8B 86 修改为
33 C0 8B F8 90 90 8B 86
PNPUI.DLL:
0F 88 D9 02 修改为
E9 DA 02 00

作者: freesoft00    时间: 2015-11-15 18:34
yamingw 发表于 2015-11-15 13:17
32位可用SystemsetupInProcess=0略过.
如果非要改,需要改两个文件。ver10240,pnpui随版本不同而不同
...

好的,知道了,谢谢!
作者: 2011ChrisR    时间: 2015-12-8 02:52
First, thank you for the great SetWoW64 :)
Is it possible to run SetWOW64 with Administrator account or with others Admin renamed ?
作者: 红毛樱木    时间: 2015-12-8 04:42
2011ChrisR 发表于 2015-12-8 02:52
First, thank you for the great SetWoW64 :)
Is it possible to run SetWOW64 with Administrator accoun ...

yes
作者: 2011ChrisR    时间: 2015-12-8 07:52
Forget, SetWoW64 works well with shortcuts.  
Replace in Winpeshl.ini: Pecmd.exe pecmd.ini => Pecmd.exe switchToAdmin.ini
Seems not good here!

作者: 红毛樱木    时间: 2015-12-8 08:04
2011ChrisR 发表于 2015-12-8 07:52
Forget, SetWoW64 works well with shortcuts.  
Replace in Winpeshl.ini: Pecmd.exe pecmd.ini => Pecmd ...

before winpeshl.exe
作者: 2011ChrisR    时间: 2015-12-8 09:00
红毛樱木 发表于 2015-12-8 08:04
before winpeshl.exe

Will do more test tomorrow for Auto Logon to Admin

作者: 红毛樱木    时间: 2015-12-8 10:08
本帖最后由 红毛樱木 于 2015-12-8 10:10 编辑
2011ChrisR 发表于 2015-12-8 09:00
Will do more test tomorrow for Auto Logon to Admin


You can use new pecmd.exe for  WOW64.
http://bbs.wuyou.net/forum.php?m ... &extra=page%3D1
http://pan.baidu.com/s/1ntzn57z
http://pecmd.sysceo.com/pecmd2012/

e.g.
reg cmdline(need main):pecmd.exe main %windir%\system32\pecmd.ini
and
pecmd.ini:exec *%windir%\system32\winpeshl.exe
作者: 红毛樱木    时间: 2015-12-8 10:11
2011ChrisR 发表于 2015-12-8 09:00
Will do more test tomorrow for Auto Logon to Admin

in 10240
auto logon to administrator,there are some mistakes,Look forward to your results.
作者: frg521    时间: 2015-12-8 14:49
本帖最后由 2011frg521 于 2015-12-8 14:54 编辑
红毛樱木 发表于 2015-12-8 10:11
in 10240
auto logon to administrator,there are some mistakes,Look forward to your results.

Why not use the version of native  ?

Add Registry to:
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Session Manager
bootexecute = Win10WoW64Support-Native.exe



添加win10wow64支持Native.png (28.25 KB, 下载次数: 352)

添加win10wow64支持Native.png

Win10WoW64Support-Native.zip

1.62 KB, 下载次数: 129, 下载积分: 无忧币 -2


作者: 2011ChrisR    时间: 2015-12-8 22:13
本帖最后由 2011ChrisR 于 2015-12-8 23:09 编辑
红毛樱木 发表于 2015-12-8 10:11
in 10240
auto logon to administrator,there are some mistakes,Look forward to your results.


SwitchToAdmin with WoW64 works with shortcuts but many tests without success with Auto-Logon.

Win10WoW64Support-Native.exe seems the only way currently :)
Native smss.exe process is loaded :)

cmdline or winpeshl (without Shell explorer.exe):
[LaunchApps]
Pecmd.exe Main %SystemDrive%\Windows\System32\SwitchToAdmin.ini (~=su.ini)

Seems to work well here.
Auto-Switch_To_Admin.7z (8.19 KB, 下载次数: 13)

作者: 红毛樱木    时间: 2015-12-8 23:31
2011ChrisR 发表于 2015-12-8 22:13
SwitchToAdmin with WoW64 works with shortcuts but many tests without success with Auto-Logon.

...

I will test it later.
Sp_star does many many work for admin.
作者: 2011ChrisR    时间: 2015-12-8 23:53
红毛樱木 发表于 2015-12-8 23:31
I will test it later.
Sp_star does many many work for admin.

I know, a really nice work :)
Tested here, Win10WoW64Support-Native is really good to auto-logon as Administrator
No need to Lauch and Kill explorer then. It need "pecmd main su.ini" only, it is significantly faster.
作者: 红毛樱木    时间: 2015-12-9 00:13
2011frg521 发表于 2015-12-8 23:58
请问你是中国人或者能看懂汉语吗?
Are you chinese ?
Can you read chinese?

我记得好像是法国人。
作者: 红毛樱木    时间: 2015-12-9 00:36
2011ChrisR 发表于 2015-12-8 23:53
I know, a really nice work :)
Tested here, Win10WoW64Support-Native is really good to auto-logon  ...

LogonUI.exe     error  in 10240.
do you have any idea?
作者: 2011ChrisR    时间: 2015-12-9 01:36
2011frg521 发表于 2015-12-8 23:58
请问你是中国人或者能看懂汉语吗?
Are you chinese ?
Can you read chinese?

French.
这真的很难与谷歌翻译
it seems that it lacks the necessary file mapping for ThinApp applications.
However, good job.

作者: 2011ChrisR    时间: 2015-12-9 01:37
红毛樱木 发表于 2015-12-9 00:36
LogonUI.exe     error  in 10240.
do you have any idea?

Tested in 10586, works well.
Now tested with 10240, same error !
作者: frg521    时间: 2015-12-9 01:47
2011ChrisR 发表于 2015-12-9 01:36
French.
这真的很难与谷歌翻译
it seems that it lacks the necessary file mapping for ThinApp appli ...

wow64-Native program running smss initialization process, the essence is the complement of the original limited code, add the KnownDll32 target directories, and symbolic links, then the system automatically creates a DLL that already exists Sections
Therefore, the normal system available, whether virtualized or the other, are the same as long as you SysWow64 ,directory has enough support and Exe Dll files


wow64-Native 程序运行在smss初始化过程中,本质就是补充了原来受限的代码,添加了KnownDll32对象目录和符号链接,然后系统自动创建已经存在的DLL的Sections
所以,正常系统可用的不管是虚拟化还是其他的,都一样,只要你的SysWow64目录中有足够的支持Dll和Exe文件
作者: 2011ChrisR    时间: 2015-12-9 20:35
本帖最后由 2011ChrisR 于 2015-12-9 20:47 编辑
红毛樱木 发表于 2015-12-9 00:36
LogonUI.exe     error  in 10240.
do you have any idea?


I got it for 10240 :)
It need "EXEC !=sc start ShellHWDetection", in addition in SwitchToAdminLogin.ini (or su.ini)

Starting from sp-star script,
I added AuthExt.dll,InputSwitch.dll, perhaps not really necessary.
Setup,CmdLine="PECMD.EXE Main %SystemRoot%\System32\SwitchToAdminLogin.ini"
in SwitchToAdminLogin.ini (or admin.ini), Kill and Relaunch Explorer is required in 10240! but not  required in 10586.

It works here for me now in 10240 and 10586

Auto-Switch_To_Admin.zip (16.63 KB, 下载次数: 25)

Edit: Need also the Great Win10WoW64Support-Native.exe
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Session Manager
bootexecute = Win10WoW64Support-Native.exe
作者: 2012mshs    时间: 2015-12-9 21:08
2011ChrisR 发表于 2015-12-9 20:35
I got it for 10240 :)
It need "EXEC !=sc start ShellHWDetection", in addition in SwitchToAdminL ...

Hi ChrisR. Is Winbuilder support Native PE?
作者: 2011ChrisR    时间: 2015-12-9 21:14
2012mshs 发表于 2015-12-9 21:08
Hi ChrisR. Is Winbuilder support Native PE?

WinBuilder has nothing to do with Native PE, it is just an engine to build a PE :)
作者: 红毛樱木    时间: 2015-12-9 21:24
2011ChrisR 发表于 2015-12-9 20:35
I got it for 10240 :)
It need "EXEC !=sc start ShellHWDetection", in addition in SwitchToAdminL ...

10240
still have it

IMG_20151209_212047.jpg (2.54 MB, 下载次数: 161)

IMG_20151209_212047.jpg

作者: 2011ChrisR    时间: 2015-12-9 21:49
It seems good here.
Already, not the same message as before ;)
Try perhaps to change WAIT 2000 => WAIT 4000. It will still fastest than loading explorer and shortcuts.
It probably need some time for loading some drivers or drivers services (depends on hardware).
作者: 2012mshs    时间: 2015-12-9 22:09
2011ChrisR 发表于 2015-12-9 21:14
WinBuilder has nothing to do with Native PE, it is just an engine to build a PE :)

Can you tell with me how to do it? I can not find any tips to do native pe. :(
作者: 红毛樱木    时间: 2015-12-9 22:15
2011ChrisR 发表于 2015-12-9 21:49
It seems good here.
Already, not the same message as before ;)
Try perhaps to change WAIT 2000 =>  ...

I try again on sp_star
still....
作者: Hi112345678    时间: 2018-8-31 11:17
請問有教學嗎?我直接把應用放進PE運行後,運行32bits的應用還是不行啊!
作者: nick20000    时间: 2019-1-9 08:39
现在有什么比较好的方法让64位WINPE运行32位程序吗?
作者: nick20000    时间: 2019-1-9 20:31
请问WIN10 PE 64bit要运行32bit程式需要哪些步骤?直接运行Win10WoW64Support跟setWOW64后执行还是不行呢
作者: liuzhaoyzz    时间: 2019-10-9 20:20
本帖最后由 liuzhaoyzz 于 2019-10-9 20:32 编辑
frg521 发表于 2015-12-8 14:49
Why not use the version of native  ?

Add Registry to:


非常感谢,为了防止这位仁兄、大神删帖,我直接发个附件上来,哈哈!        

Win10WoW64Support-Native.rar

30.33 KB, 下载次数: 15, 下载积分: 无忧币 -2


作者: MC阿虎    时间: 2020-3-13 09:02
来学习啦
作者: 很闲    时间: 2020-4-11 21:21
为什么总提示我没有下载附件的权限
作者: ntuu    时间: 2023-2-15 10:41
这个用来做什么用?
作者: yyz2191958    时间: 2023-2-15 15:27
很高深的东西
作者: huang1987    时间: 2023-11-26 05:13
谢谢分享




欢迎光临 无忧启动论坛 (http://bbs.wuyou.net/) Powered by Discuz! X3.3