青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

我住包子山

this->blog.MoveTo("blog.baozishan.in")

向Vista學習,實現XP下重命名文件忽略選取擴展名

image   這兩天對于HOOK的技術有了一個入門的學習,用過vista的同學會發現vista重命名一個文件比如vista.exe,他會自動選中vista忽略掉擴展名,帶來比較方便的用戶體驗,學了一些hook我也想試試xp下能不能做這樣的事情。于是參考一些文章,勉強實現了,有一點兒缺陷(請看最后)。

   經過觀察我發現重命名時,資源管理器會向他的子窗口listview發送一個LVM_EDITLABELA的控制消息,所以我使用了WH_CALLWNDPROCRET類型的全局掛鉤,這個掛鉤可以在sendmessage結束以后處理傳送和返回的數據。發送了LVM_EDITLABELA消息后,會在lParam得到一個編輯窗口的句柄,只需之后對這個窗口發送EM_SETSEL控制消息就能夠改變重命名時候的高亮區域。hook回調函數如下:

   1: static LRESULT CALLBACK msghook(UINT nCode, WPARAM wParam, LPARAM lParam)
   2: {
   3:     if(nCode < 0)
   4:     {
   5:         CallNextHookEx(hook,nCode,wParam,lParam);
   6:         return 0;
   7:     }
   8:     LPCWPRETSTRUCT msg = (LPCWPRETSTRUCT) lParam;
   9:     if(msg->message == LVM_EDITLABELA || msg->message == LVM_EDITLABELW)
  10:     {
  11:         GetClassName(msg->hwnd,className,255);
  12:         GetWindowText(msg->hwnd,wndName,255);
  13:         if(0==_tcscmp(className,_TEXT("SysListView32")))
  14:         {
  15:             if(0==_tcscmp(wndName,_TEXT("FolderView")))
  16:             {
  17:                 hEditWnd = (HWND)msg->lResult;
  18:                 GetWindowText(hEditWnd,className,255);//暫時放入className
  19:                 SendMessage(hEditWnd,EM_SETSEL,0,findDot(className));
  20:             }
  21:         }
  22:     }
  23:     return CallNextHookEx(hook,nCode,wParam,lParam);
  24: }

 

className與wndName是兩個TCHAR數組,從hwnd獲取信息存在那里進行判斷是否為Shell中的listview,避免在其它使用listview的應用程序里會進行之后的處理。

   工程文件下載,點這里

   程序下載,點這里

   使用方法,編譯以后直接運行GRnamer就可以,如果不想用了,從任務管理器把它關閉,沒有做trayicon之類的東西,因為只是個demo。

image   最后說一下缺陷,缺陷就是這樣做沒有辦法判斷文件與文件夾的區別,所以會有如圖的效果,我自己沒有想到解決的方法,請達人們指點。:)

 

   參考的文章:

msdn Hooks hook的全部參考

codeproject Hooks and DLLs 我的hook dll都是照著它寫的。

posted on 2008-05-17 02:05 Gohan 閱讀(3043) 評論(17)  編輯 收藏 引用 所屬分類: C++MFC/SDK

Feedback

# re: 向Vista學習,實現XP下重命名文件忽略選取擴展名[未登錄] 2008-05-17 10:34 Rich

學習了。  回復  更多評論   

# re: 向Vista學習,實現XP下重命名文件忽略選取擴展名 2008-05-17 10:41 blankyao

學習一下~  回復  更多評論   

# re: 向Vista學習,實現XP下重命名文件忽略選取擴展名 2008-05-17 10:42 Leewings

這么麻煩....
ubuntu自動實現了..哈哈.~  回復  更多評論   

# re: 向Vista學習,實現XP下重命名文件忽略選取擴展名 2008-05-17 10:50 Gohan

@Leewings
呵呵,是有點麻煩:)  回復  更多評論   

# re: 向Vista學習,實現XP下重命名文件忽略選取擴展名 2008-05-17 11:27 陳梓瀚(vczh)

讀文件的attribute是可以知道這東西是文件還是文件夾的。至于路徑,去hack資源管理器的那個下拉列表應該看得到的吧?這個我沒干過,不知道行不行。  回復  更多評論   

# re: 向Vista學習,實現XP下重命名文件忽略選取擴展名 2008-05-17 12:09 Gohan

@陳梓瀚(vczh)
恩,這樣應該能得到路徑,不過可能對于桌面上的文件就不支持了,還有問題是如果沒有顯示地址工具欄是找不到那個combolbox的。以后等學好了shell 擴展可能能更完善的解決。  回復  更多評論   

# re: 向Vista學習,實現XP下重命名文件忽略選取擴展名 2008-05-18 23:29 閑耘

Win2k3下無反應。  回復  更多評論   

# re: 向Vista學習,實現XP下重命名文件忽略選取擴展名 2008-05-19 12:42 Gohan

@閑耘
哦?可能是2003加強了安全吧,我沒有用過2003,這個demo只在xp下試用通過  回復  更多評論   

# re: 向Vista學習,實現XP下重命名文件忽略選取擴展名 2008-05-19 17:07 多多

@Gohan

桌面上也可以得到路徑。用

%USERPROFILE%\桌面

即可~  回復  更多評論   

# re: 向Vista學習,實現XP下重命名文件忽略選取擴展名 2008-05-19 19:08 Gohan

@多多
是的,謝謝,對了,桌面好像可以也可通過一個shell相關的函數返回pidl來得到。等以后練習練習  回復  更多評論   

# re: 向Vista學習,實現XP下重命名文件忽略選取擴展名 2008-05-19 19:11 多多

@Gohan

這個我也有印象,因為桌面就是Explorer的一個窗口,可以獲得他的句柄。  回復  更多評論   

# re: 向Vista學習,實現XP下重命名文件忽略選取擴展名 2008-05-20 21:33 Gohan

@多多
好的,多多交流  回復  更多評論   

# re: 向Vista學習,實現XP下重命名文件忽略選取擴展名 2009-02-22 15:41 einheria

有一個缺點,F2和右鍵重命名都可以實現,慢雙擊發起的重命名還是高亮選取全部

LZ這個程序很好,我已經設為開機自動運行了,希望可以改進!  回復  更多評論   

# re: 向Vista學習,實現XP下重命名文件忽略選取擴展名 2009-02-26 11:46 Gohan

@einheria
謝謝你的支持,這個小程序只是一個小練手,不知道啥時候能夠再改改了。高檔的軟件有很多,QTTabbar也附有這個功能。  回復  更多評論   

# re: 向Vista學習,實現XP下重命名文件忽略選取擴展名 2010-04-08 12:19

多謝!!!  回復  更多評論   

# re: 向Vista學習,實現XP下重命名文件忽略選取擴展名 2011-05-26 16:07 free keylogger download

win7 下怎么不能正確判斷呢?
情樓主幫忙看一下,多謝  回復  更多評論   

# re: 向Vista學習,實現XP下重命名文件忽略選取擴展名 2011-05-26 16:09 free auto bulk mail sender download

多謝分享,非常實用的一個feature!  回復  更多評論   

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            欧美成人精品福利| 亚洲网友自拍| 国产欧美日本| 亚洲欧美日韩精品| 久久精品亚洲精品| 亚洲精品一区二区在线观看| 亚洲在线观看免费视频| 国产日韩欧美一区| 亚洲精品久久久蜜桃| 亚洲午夜激情在线| 欧美在线免费视屏| 亚洲欧美日本伦理| 欧美色网在线| 亚洲免费高清| 一区二区不卡在线视频 午夜欧美不卡'| 久久精品在线| 免费看亚洲片| 欧美久久久久免费| 亚洲精选在线| 一区二区成人精品| 国产欧美在线视频| 中文av一区特黄| 亚洲国产精品小视频| 蜜桃视频一区| 欧美制服丝袜| 亚洲一区二区三区精品视频| 国产精品亚洲综合| 亚洲高清视频一区| 一区二区三区欧美| 久久青青草综合| 国内精品视频在线播放| 亚洲大片免费看| 国产午夜精品理论片a级大结局| 久久久噜噜噜久久| 久久久久久久成人| 亚洲综合第一| 一区在线视频| 午夜在线一区| 亚洲视频综合| 国产精品揄拍500视频| 久久天堂成人| 欧美成人嫩草网站| 黑人巨大精品欧美黑白配亚洲| 久久激情网站| 午夜精品久久久久| 国产一区二区成人久久免费影院| 亚洲欧美日韩天堂| 欧美日韩国产精品专区| 欧美日韩精品在线视频| 久久久久青草大香线综合精品| 久久久久久91香蕉国产| 欧美国产第一页| 久久欧美中文字幕| 欧美日韩精品在线视频| 久久嫩草精品久久久久| 国产午夜亚洲精品理论片色戒| 久久另类ts人妖一区二区| 亚洲精品国产精品久久清纯直播| 亚洲国产合集| a4yy欧美一区二区三区| 亚洲免费视频在线观看| 女生裸体视频一区二区三区| 免费看亚洲片| 亚洲精品中文字幕在线| 亚洲欧美日韩一区二区| 亚洲精品一区二区三区在线观看 | 欧美一区日韩一区| 亚洲精品视频在线观看网站| 欧美日韩成人在线播放| 99在线精品视频| 欧美一二三视频| 欧美sm视频| 国产原创一区二区| 久久国产乱子精品免费女| 亚洲欧洲一区二区天堂久久| 久久精品亚洲一区二区| 欧美高清不卡| 国产婷婷一区二区| 美日韩丰满少妇在线观看| 国内精品久久久久久| 好吊色欧美一区二区三区视频| 欧美在线播放视频| 欧美午夜精品久久久久久久| 欧美激情综合| 欧美久久久久久久久| 欧美在线观看视频一区二区| 欧美激情精品久久久久久蜜臀| 欧美激情五月| 免播放器亚洲一区| 久久久久欧美| 亚洲激情成人在线| 久久精品亚洲一区| 久久综合九色综合网站| 久久人人爽国产| 欧美激情视频在线播放| 亚洲黄色在线观看| 久久亚洲视频| 一区二区三区精品视频在线观看| 欧美理论在线播放| 欧美电影免费| 久久人人精品| 免费视频久久| 久久久久网址| 欧美aⅴ99久久黑人专区| 亚洲欧洲日产国产网站| 国产在线高清精品| 亚洲国产天堂久久国产91| 亚洲精品久久嫩草网站秘色| 一本久道久久综合狠狠爱| 久久久精品欧美丰满| 亚洲永久在线观看| 久久综合伊人| 9久re热视频在线精品| 亚洲欧洲日产国产综合网| 国产字幕视频一区二区| 亚洲人成毛片在线播放女女| 亚洲一区二区三区在线视频| 一本到12不卡视频在线dvd| 久久五月激情| 一区二区三区**美女毛片| 免费精品视频| 亚洲欧美视频在线观看视频| 正在播放欧美视频| 一区二区三区偷拍| 免播放器亚洲一区| 久久综合精品国产一区二区三区| 午夜日韩电影| 久久久噜噜噜| 亚洲欧美国产制服动漫| 亚洲欧洲一区二区三区久久| 在线性视频日韩欧美| 欧美日韩国产va另类| 欧美a级在线| 欧美成va人片在线观看| 亚洲精品视频一区| 欧美激情导航| 亚洲丰满在线| 好吊色欧美一区二区三区视频| 欧美国产日韩一区二区三区| 另类图片综合电影| 亚洲毛片在线免费观看| 欧美激情一区二区三区| 亚洲黄色精品| 久久精品理论片| 亚洲影院色无极综合| 久久精品中文字幕一区二区三区| 麻豆成人综合网| 亚洲国产精品毛片| 午夜精品久久久久久久久久久久| 国产精品毛片| 亚洲欧美日韩国产成人精品影院| 久久精品国产一区二区三| 亚洲欧洲精品成人久久奇米网| 91久久午夜| 久久精品导航| 欧美一区二区视频在线观看2020 | 欧美日韩免费精品| 免费精品视频| 一区二区三区视频在线| 亚洲激情在线播放| 一区二区三区免费在线观看| 亚洲欧洲日产国产网站| 国产精品激情电影| 国产精品99久久久久久白浆小说 | 久久美女艺术照精彩视频福利播放| 亚洲欧洲一区二区在线观看| 亚洲日韩成人| 国产亚洲永久域名| 国产精品久久一卡二卡| 在线观看成人网| 麻豆国产精品777777在线| 欧美亚洲网站| 欧美3dxxxxhd| 国产精品chinese| 蜜臀va亚洲va欧美va天堂| 欧美成人精品激情在线观看| 欧美激情视频一区二区三区免费| 亚洲高清不卡在线观看| 国产色视频一区| 免费观看30秒视频久久| 久久精品视频导航| 久久国产主播| 欧美夜福利tv在线| 亚洲国产精品第一区二区| 久久人体大胆视频| 欧美午夜宅男影院| 欧美精品在线视频| 欧美成熟视频| 亚洲综合首页| 亚洲男人的天堂在线| 欧美一级片在线播放| 免费成人小视频| 牛牛国产精品| 欧美日韩午夜视频在线观看| 一区精品久久| 亚洲欧美视频一区| 国产精品www994| 国产精品日本精品| 亚洲综合视频1区| 欧美日韩在线视频观看|