首页
社区
课程
招聘
[求助]想分析一下"文件夹选项"的部分实现功能, 但不知如何运行..
发表于: 2009-4-10 18:28 3562

[求助]想分析一下"文件夹选项"的部分实现功能, 但不知如何运行..

2009-4-10 18:28
3562
运行"文件夹选项"的命令是:
rundll32.exe shell32.dll,Options_RunDLL 0

我的目的就是在自已程序中后台实现"文件夹选项"中,
"脱机文件"页里的
"启用脱机文件(&E)" 选项

选择, 不选择时, explorer.exe 要做的功能...

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

上传的附件:
收藏
免费 0
支持
分享
最新回复 (9)
雪    币: 189
活跃值: (4810)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
2
我只想分析一下"文件夹选项"中, "脱机文件"页里的"启用脱机文件(&E)" Button, 不选择时, explorer.exe 做了什么, 我只知它最后的是写入注册表:

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\NetCache]
"Enabled"=dword:00000000

但写入注册表前调用了什么功能来能实现 (禁)"启用脱机文件(&E)"

765957CB  /$  8BFF          mov     edi, edi
765957CD  |.  55            push    ebp
765957CE  |.  8BEC          mov     ebp, esp
765957D0  |.  83EC 0C       sub     esp, 0C
765957D3  |.  8B45 14       mov     eax, dword ptr [ebp+14]
765957D6  |.  53            push    ebx
765957D7  |.  56            push    esi
765957D8  |.  8B75 10       mov     esi, dword ptr [ebp+10]
765957DB  |.  57            push    edi
765957DC  |.  33DB          xor     ebx, ebx
765957DE  |.  8818          mov     byte ptr [eax], bl
765957E0  |.  0FB606        movzx   eax, byte ptr [esi]
765957E3  |.  6A 04         push    4                                     ; /BufSize = 4
765957E5  |.  8945 F8       mov     dword ptr [ebp-8], eax                ; |
765957E8  |.  8D45 F8       lea     eax, dword ptr [ebp-8]                ; |
765957EB  |.  50            push    eax                                   ; |Buffer
765957EC  |.  6A 04         push    4                                     ; |ValueType = REG_DWORD
765957EE  |.  53            push    ebx                                   ; |Reserved => 0
765957EF  |.  68 98585976   push    76595898                              ; |ValueName = "Enabled"
765957F4  |.  FF75 08       push    dword ptr [ebp+8]                     ; |hKey
765957F7  |.  8BF9          mov     edi, ecx                              ; |
765957F9  |.  FF15 8C135976 call    dword ptr [<&ADVAPI32.RegSetValueExW>>; \RegSetValueExW
2009-4-10 18:41
0
雪    币: 148
活跃值: (12)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
应该是“ActiveX”或“COM”的东西。

不懂.一起静静的等待大牛来解密.我的“文件夹选项”里找不到“脱机文件”这东西.贴主来图瞧瞧到底什么玩意儿?
2009-4-10 18:47
0
雪    币: 189
活跃值: (4810)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
4
我的目的就是在自已程序中后台实现"文件夹选项"中,
"脱机文件"页里的
"启用脱机文件(&E)" 选项

选择, 不选择时, explorer.exe 要做的功能...
2009-4-10 18:52
0
雪    币: 189
活跃值: (4810)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
5
真是没办法知explorer.exe 调用了什么功能来实现....

下断点:IsDlgButtonChecked 或 765957CB  可正常断下,  explorer.exe 只是写入注册表, 都没调用什么功能来实现

ds:[76591170]=7C810760 (kernel32.CreateFileW)

020DD450   76591E50  |FileName = "\\.\shadow"
020DD454   00000020  |Access = 20
020DD458   00000003  |ShareMode = FILE_SHARE_READ|FILE_SHARE_WRITE
020DD45C   00000000  |pSecurity = NULL
020DD460   00000003  |Mode = OPEN_EXISTING
020DD464   00000000  |Attributes = 0
020DD468   00000000  \hTemplateFile = NULL

ds:[7659116C]=7C801625 (kernel32.DeviceIoControl)
上传的附件:
2009-4-11 01:26
0
雪    币: 189
活跃值: (4810)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
6
可能要设一下面的才会有上面的选项
上传的附件:
2009-4-11 01:31
0
雪    币: 189
活跃值: (4810)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
7
网吧现在所有机关不了, 全因上面的...(系统是XP SP2)
2009-4-11 01:34
0
雪    币: 189
活跃值: (4810)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
8
坛主能提示下吗, explorer.exe 除了写入注册表外(我认为写注册表没用的, 只是记录一下), 调用了什么功能来实现(相当于:不选择"启用脱机文件(&E)" 时?
2009-4-11 01:48
0
雪    币: 2110
活跃值: (21)
能力值: (RANK:260 )
在线值:
发帖
回帖
粉丝
9
explorer确实什么都没做,除了把设置值写入注册表。
2009-4-11 17:46
0
雪    币: 189
活跃值: (4810)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
10
但都立即生效了啊!!!

我以前也试过写注册表, 重启也不生效!!!

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\NetCache]
"Enabled"=dword:00000000
"DefCacheSize"=dword:000003ea
2009-4-11 21:49
0
游客
登录 | 注册 方可回帖
返回
//