如何用代码调出“文件夹选项”那个窗口?(50分)

  • 主题发起人 主题发起人 lawler
  • 开始时间 开始时间
L

lawler

Unregistered / Unconfirmed
GUEST, unregistred user!
如何用代码调出“文件夹选项”那个窗口?
就是点击文件夹-工具-文件夹选项弹出的那个窗口
 
不知道。。
 
用这个:
WinExec('rundll32.exe shell32.dll,Options_RunDLL 0',SW_SHOW);
 
另外个方法:
function GetShellWindow():HWND; stdcall;
external 'user32.dll'name'GetShellWindow';
然后调用
PostMessageW(GetShellWindow(),$416,0,0);
其实这是Options_RunDLLA 所做的。
你可以看下面
----
.text:7D72AFD8 ; int __stdcall Options_RunDLLA(int,int,LPCSTR lpSrc)
.text:7D72AFD8 public Options_RunDLLA
.text:7D72AFD8 Options_RunDLLA proc near
.text:7D72AFD8
.text:7D72AFD8 lpSrc = dword ptr 10h
.text:7D72AFD8
.text:7D72AFD8 mov edi, edi ; Options_RunDLL
.text:7D72AFDA push ebp
.text:7D72AFDB mov ebp, esp
.text:7D72AFDD push 0 ; lParam
.text:7D72AFDF push [ebp+lpSrc] ; lpSrc
.text:7D72AFE2 call ds:StrToIntA
.text:7D72AFE8 push eax ; wParam
.text:7D72AFE9 push 416h ; Msg
.text:7D72AFEE call ds:GetShellWindow
.text:7D72AFF4 push eax ; hWnd
.text:7D72AFF5 call ds:PostMessageW
.text:7D72AFFB pop ebp
.text:7D72AFFC retn 10h
.text:7D72AFFC Options_RunDLLA endp
----
显示任务栏和[开始]菜单属性就用
PostMessageW(GetShellWindow(),$416,1,0);
 
接受答案了.
 
后退
顶部