之前,有人問我有沒有辦法寫資料夾加密碼的程式出來,那時候我直覺是:我辦不到!!我對Windows登入檔不熟,而Linux系統我是完全沒碰過的人,不管是在哪個OS,我直覺我寫不出來!
後來很巧妙的,又有人問我有沒有辦法改變資料夾的背景圖,那時候我只知道用desktop.ini可以用,但是偏偏不知道怎麼用,於是我用上了MSDN去查了desktop.ini是在幹嘛的。那時候我的OS已經是XP了,說實在的,desktop.ini幾乎是存在於 WinXP 以前的東西,裡面有很多我試了都沒作用(當然也可能是我測試失敗),像是InfoTip、NoSharing等,這些在WinXP裡面都沒有作用。不過,卻讓我試到一個好玩的東西。而最近,在因緣際會下瀏覽了一位高人的網誌,所以發了這篇小小點一下當初我是怎麼做到資料夾加密的功能。由於這個加密的技巧我使用的不是很正統,中間可能有一些動作會讓人覺得非常危險,所以這裡不詳述,只介紹 desktop.ini 這塊就好。
在此要先聲明,目前有病毒藉由 desktop.ini 進行傳播,在操作時要特別留意。
一、利用desktop.ini 換資料夾 icon
1. 假設我現在要換 icon 的資料夾路徑為 "D:\Windows\Desktop\Test",那麼我先在 "D:\Windows\Desktop\Test" 裡面開啟一個 txt 文字檔,內容如下:
[.ShellClassInfo]
ConfirmFileOp=0
IconFile=%SystemRoot%\system32\SHELL32.dll
IconIndex=5
(1.1) ConfirmFileOp: 關於其參數說明請查看 MSDN,一般人用到的都是0較多
(1.2) IconFile=%SystemRoot%\system32\SHELL32.dll
IconIndex=5
這二行是要一起看的,關於 SHELL32.dll,裡面會提供許多預設的 icon,
如果你要查有哪些 icon 的話可以照著以下動作這麼做…
(1.2.a) 在隨便一個資料夾上按右鍵 -> 內容
(1.2.b) 切到 "自訂" 標纖,再選擇 "變更圖示"
(1.2.c) icon 的編號如下所示, 編號從0開始,
你可以選擇你喜歡的 icon 後記下它的編號
(1.3) 當然,你也可以準備自己的 icon,上面我舉的例子是用系統預設的
接下來的例子是我要準備我自己的 icon - Folder.ico
[.ShellClassInfo]
ConfirmFileOp=0
IconFile=Folder.ico
IconIndex=0
由於準備的是自己的 icon,所以 IconIndex設為0(待會解說的時候以這個 desktop.ini為解說)
2. 編寫完成後,將該 txt 檔案存成 desktop.ini,所以我的"D:\Windows\Desktop\Test" 資料夾裡些應該會有這些東西
3. 接下來這部是很重要的一步,麻煩請按 開始 ->執行 ,並輸入
attrib +r "D:\Windows\Desktop\Test"
4. 再回到上一層目錄,你可以看到我們的資料夾(Test)已經是 Folder.ico 的樣子了
二、換文字顏色、文字背景色、資料夾背景圖片
1. 這次,我們要修改的資料夾路徑假設為 "D:\Windows\Desktop\Test2",而且我們把常用到的都寫進來..
{BE098140-A513-11D0-A3A4-00C04FD706EC}={BE098140-A513-11D0-A3A4-00C04FD706EC}
[{BE098140-A513-11D0-A3A4-00C04FD706EC}]
Attributes=1
IconArea_Image=Test2.jpg
IconArea_Text=0x0000069F0
IconArea_TextBackground=0x0078003C
[.ShellClassInfo]
ConfirmFileOp=0
IconIndex=0
IconFile=MOON.ICO
DefaultDropEffect = 4
2. {BE098140-A513-11D0-A3A4-00C04FD706EC}={BE098140-A513-11D0-A3A4-00C04FD706EC}
[{BE098140-A513-11D0-A3A4-00C04FD706EC}]
Attributes=1
這三行固定不變。
3. IconArea_Image=Test2.jpg,其中的Test2.jpg即為你要顯示的背景圖片
4. IconArea_Text=0x0000069F0 ,代表文字的顏色,這方面的文字顏色可以去查色碼表。
5. IconArea_TextBackground=0x0078003C,代表文字的背景顏色,特別注意,由於我們這次寫的 desktop.ini 裡面有設定背景圖片,所以文字背景顏色會看不出來,如果你把 IconArea_Image 這行述敘拿掉的話,文字背景顏色就可以正常顯示。
6. DefaultDropEffect = 4,DefaultDropEffect 代表,如果有其它檔案或資料夾 "拖曳" 到這個資料夾(這個例子指的是"D:\Windows\Desktop\Test2")裡面的話,那些被拖的檔案動作為何。有四個值可以選,1代表複製,2代表移動,4代表建立捷徑(shortcut)。
7. 再次提醒,建立好資料夾、寫好 desktop.ini 之後,一定要進行 attrib +r "資料夾名稱" 才能使 desktop.ini 正常運作。好了之後,我們的資料夾會長成這樣
有背景圖,顏色也被改了,如果把想要把背景圖拿掉,接下來的 IconArea_TextBackground=0x0078003C 便起作用,你的顯示可能會變成這樣
當然,你跳出資料夾之後,圖示會變成 MOON.ICO 的圖示。
三、desktop.ini 於根目錄底下的作用
現在遇到一個很嚴重的情況,"我有辦法對 D:\ 這種根目錄進行資格夾的格式化嗎" ? 順著我們上面的方式走,我們會在根目錄底下先建立一個desktop.ini,然後再放入desktop.ini所需的圖片、icon等等,接下來的步驟呢?
attrib +r D:\
問題就在這裡!! 這個指令沒有作用…你開始命令提示字元的時候,它會跟你說找不到 D:\ 這個檔案(就算你打 attrib +r D: 也是一樣的結果),那...該怎麼辦?這裡有個方法可以參考,雖然它可能不是很正式...
你先建立一個暫存的資料夾,然後再此資料夾建立一個 desktop.ini,最後再用 attrib +r 的指標使得 desktop.ini 可於此資料夾正常運作。好了之後,把你的 desktop.ini 和相關的圖片、icon全都剪下來到 D:\ 底下,那麼這個 desktop.ini 就可以成功使用了(其實也才成功一半而已)。我們先來看一下建立好之後 D 槽會長怎樣
嗯…很好,裡面的文字顏色、背景圖都變了,接下來我們跑到外面去看 D 槽的 Icon 會長得怎樣
很遺憾的,D槽的 Icon 並沒有變。讓人意外的是我的 G 槽(G槽是隨身碟) icon 竟然變了,而且連名稱都變了。因為,我的 G 槽裡面有放 autorun.inf,G槽內容長成這樣
裡面有 autorun.inf 去控制根目錄的 ICON,而 desktop.ini 則負責背景圖片、文字顏色、文字背景顏色這二部份。於是,我也於 C:\ D:\ 底下又寫了 autorun.inf,內容如下
[autorun]
label="System"
icon=KNIGHT2.ICO
就只有這三行(如果對 autorun.inf 有興趣的話,請參考這篇),要特別注意的是,autorun.inf 在根目錄寫完之後,記得要重新開機才能正常執行。等正常開機之後,就變成這樣了。
當然你也可以說,為什麼 desktop.ini 重新開機的時候說不定也會成功!是滴,關於這個問題,我也測過,不寫 autorun.inf ,只有 desktop.ini 在 C, D 底下重開機後,仍然沒辦法正常顯示 Icon。好了,"正常" 的 desktop.ini 到此介紹結束,接下來介紹一個不正常的功能。
四、desktop.ini 特殊功能
之前在研究 desktop.ini 的時候,其中為了試 HTMLInfoTipFile 這個東西浪費了我好久時間,到最後還是沒試出來,最後發現其它功能,讓我很 Kuso 的發展出資料夾保護程式。
1. 假設我於 "D:\Windows\Desktop" 建立了一個資料夾,名稱叫 "加密資料",一開始什麼都不做的時候它長這樣
2. 於 加密資料夾中,建立一個 desktop.ini,內容如下
[.ShellClassInfo]
CLSID = {871C5380-42A0-1069-A2EA-08002B30309D}
3. 再放進去一些檔案,最後記得要用 attrib +r "D:\Windows\Desktop\加密資料",完成之後,你會發現資料夾的圖示如下
當你快點二下之後,很遺憾的,它只能使用你的 IE 連上你的首頁,連用 右鍵 -> 開啟 還是 右鍵 -> 檔案總管 都沒辦法再看到裡面的資料了。那...還能怎麼辦?
4. 會用命令提元字元的人,已經知道該怎麼做了... attrib -r "D:\Windows\Desktop\加密資料",不過只這麼做的話,並沒辦法正常開啟,還要加一個指令: del "D:\Windows\Desktop\加密資料\desktop.ini"。之後資料夾就能回復正常狀態。
desktop.ini 就介紹到此,對於上述有問題的話也歡迎一起討論,當然,如你會配合 HTMLInfoTipFile ,而且又會寫 htt 樣版的話,也希望能夠不吝指教。

借我貼喔^^謝謝
歡迎,但請註明出處..
假設小弟把 DESKTOP.INI 放在 D 槽 123 資料夾底下 那麼小弟只要在網址列輸入 D:\123\DESKTOP.INI 即可看到 DESKTOP.INI 裡面的內容 接著再刪除裡面所有文字後 覆蓋原本檔案 就破解了不是?
如果將 desktop.ini 設成唯讀+隱藏屬性的話,原本的檔案就蓋不過去,由於沒辦法進入資料夾,也無法改變檔案屬性,除非於 cmd 下執行 attrib -r -h D:\123\desktop.ini後,才能再用你的方式去破解 (最後還是要用命令提示字元...)
很實用的方法 省的灌一些詭異的軟體改
謝謝您的稱讚!!不過在 win7 底下測試,win7 似乎對 desktop.ini 毫無反應..
w7的folder code碼不一樣... 所以抓不到東西...
抱歉,現在才看到您的回覆。 你說的是對的,到 Vista 之後都是無效的, Vista 之後的設定我幾乎沒研究便是。
如果在設定前先建立一個捷徑就可以開啟資料夾了
可以,不過自己加密的,誰還會故意做一個開口給別人? 另外這篇 desktop.ini 其實只到 XP, Vista 之後都是無效化...
請問 在您基因演算法的文章中 提到的 0110001110 您說 那是=0.389 請問那是怎麼來得呢? 我用二進制 算了好久 答案都是0.398 ><
可能是我算錯,把步驟放上來看比較準。