基础:我有一小段注册表更改vb脚本。
key = "Software\Microsoft\Windows\CurrentVersion\Explorer\Streams"
result = wmireg.CreateKey(HKCU, key)
binaer = Array(8,0,0,0,6,0,0,0,0,0,0,0,229,37,241,101,225,123,16,72,186,157,210,113,200,67,44,227,4,0,0,0,3,0,0,0,67,0,0,0)
result = wmireg.SetBinaryValue(HKCU, key,"Settings",binaer)
key ="Software\Microsoft\Windows\CurrentVersion\Explorer\Streams\Defaults"
result = wmireg.CreateKey(HKCU, key)
binaer = Array(28,0,0,0,5,0,0,0,0,0,3,0,0,0,144,0,0,0,0,0,1,0,0,0,255,255,255,255,240,240,240,240,20,0,3,0,144,0,0,0,0,0,0,0,48,0,0,0,253,223,223,253,15,0,4,0,32,0,16,0,40,0,60,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,42,1,96,0,120,0,120,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)
result = wmireg.SetBinaryValue(HKCU,key,"{F3364BA0-65B9-11CE-A9BA-00AA004AE837}", binaer)
问题:在此代码段中,资源管理器的默认视图将设置为tile-view。在 Windows XP 中一切正常。现在我要将其翻译为 Windows 8 ,但没有成功。
我使用Process Monitor找出了如果我使用UI手动执行此步骤将设置的注册表项值。
在Windows 8中,键:
HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Streams\Settings
将设置为:
08 00 00 00 06 00 00 00 01 00 00 00 E5 25 F1 65
关键:
HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Streams\Defaults\{5C4F28B5-F869-4E84-8E60-F11DB97C5CC7}
将设置为
1C 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
在Windows XP中,我可以通过脚本更改此值,重新启动(或注销登录),默认视图是切片视图。但在Windows 8中没有任何反应。
我使用Windows 8值更改了vbs,现在如果脚本完成,将成功修改注册表中的值。但是,如果我打开我的资源管理器,则不会应用其他视图。
答案 0 :(得分:1)
在使用RegShot进行一些研究后,我发现您必须首先删除这些密钥:
Software\Classes\Local Settings\Software\Microsoft\Windows\Shell\Bags
Software\Classes\Local Settings\Software\Microsoft\Windows\Shell\BagMRU
Windows不需要这些密钥保持一致。如果它们丢失,系统会使用基本设置动态创建它们。
删除这些键后,您可以通过将正确的字节设置为这些键来设置默认视图:
Software\Microsoft\Windows\CurrentVersion\Explorer\Streams\Settings
Software\Microsoft\Windows\CurrentVersion\Explorer\Streams\Defaults\{5C4F28B5-F869-4E84-8E60-F11DB97C5CC7}
使用RegShot工具,您可以找到Symbole-,Details-或List-View的正确字节。如果有人需要他们发表评论。我不想在这篇文章中写一个~40x20 Byte-Matrix;)。
使用此方法,您无需重新启动或注销更改所有文件夹的默认文件夹视图。 此方法还重置所有已保存的文件夹视图并设置默认值。