不想使用優化大師做。想自己寫一個,求思路。看哪些書可以實現。


如果題主只是想在右鍵菜單提供一些程序的入口的話,根本沒必要用C++,可以用bat腳本寫個修改註冊表的批文件就可以了。

修改的註冊表路徑在 HKEY_CLASSES_ROOTDirectoryBackgroundshell,把你想要的名稱和對應程序的路徑填好就行。

批文件可以這麼寫

@echo off reg add HKEY_CLASSES_ROOTDirectoryBackgroundshell 。。。(一時沒有註冊表窗口參考,坑待填)

如果只是打開常用程序,而不是用常用程序打開文件的話,我採用一個很早以前網上看到的方法:

建一個快捷方式文件夾,所有常用程序的快捷方式都丟進去,然後把這個文件夾路徑加入到環境變數的Path裡面。快捷方式的名字重在容易記。一些常用的文件夾我也在裡面丟了個快捷方式。

比如UltraEdit的快捷方式名用ue,類似的還有foxmail、evernote、word、excel等。電子書的文件夾快捷方式名就叫ebook,漫畫的文件夾快捷方式就叫comic,音樂文件夾的快捷方式就叫music。

為了方便起見,這個裝滿快捷方式的文件夾還包含一個指向自身的文件夾。這樣需要增加新的快捷方式的時候能很容易打開該文件夾。

用的時候Win鍵+R,輸入快捷名回車即可,2秒搞定,眼睛和滑鼠都用不著。

好處:

  • 桌面上用不著一大堆快捷方式,多了眼花找起來麻煩。
  • 重裝系統的時候,只要應用程序和快捷方式文件夾不在系統分區,那隻要重裝後將【快捷方式文件夾】再度加入環境變數Path即可。
  • 快捷方式是可以帶參數的,所以同一個應用程序要帶不同參數啟動的時候,可以建多個指向同一個應用程序而名字略有不同的快捷方式,裡面填上不同參數。


題主你要的是這效果嗎?我之前做了一個,不過還有些地方想完善一下。有興趣可以一起來玩吶
windows shell 擴展編程


額,學下怎麼調用 Win32 API 操作註冊表就行了。
推薦閱讀:
相关文章