Windows 機密文件大智若愚

Raymond Chen

當您 將 CD 光碟片放入電腦時,Windows® 或許會詢問您下一歩該怎麼做,即使上一次您已經告知電腦該怎麼做。為什麼 Windows 會忘記您的自動播放設定呢?事實上它並沒有忘記,只是在跟您確認而已。

Windows XP 處理 CD 自動播放的方式有兩個問題存在。首先,有許多使用者發現在安裝完支援 CD 自動播放的程式之後,他們不知該如何將此程式設定為新的預設 CD 自動播放程式。如果他們在先前就已選取了一個程式,並且勾選了 [自動執行選取的動作],就不容易發現如何取消此執行動作以再次顯示 CD 自動播放對話,讓使用者能夠重新選取預設程式。

再來,某些素行不良的應用程式在安裝的時候,會祕密地自行竄改未記載的 CD 自動播放功能,讓自己成為預設的 CD 自動播放處理常式,進而取代使用者的選擇。

總之,對使用者而言有兩個問題,也就是:「我剛剛才安裝了此程式,而我想要它成為我的 CD 自動播放程式」,還有情況正好相反的「我剛剛才安裝了此程式,但是我不想要它成為我的 CD 自動播放程式」。

Windows Vista treats autoplay settings globally

Windows Vista treats autoplay settings globally(按影像可放大)

Windows XP Service Pack 2 (SP2) 推出了嶄新的 CD 自動播放行為,為的就是要嘗試解決這些問題。當系統偵測到有新的 CD 自動播放處理常式可用時,Windows 就會再次顯示 CD 自動播放對話。這讓您有機會選取您剛安裝的新應用程式,或是如果該應用程式大膽地將自己設定為新的預設播放程式,您也可以取消選取該應用程式。

在升級到 Windows XP SP2 之後,您也會在初次插入 CD 時看到 CD 自動播放對話方塊。這是「遲到總比不到好」的對話方塊,主要是要在您升級到 Windows XP SP2 之後,用來應付先前已安裝的處理常式。

在以往,作業系統只需關注如何提供介面給開發人員運用。但是在當下的軟體環境中,它還需要擔憂如何阻絕濫用介面的程式設計師。

另一種情況是 Windows 看起來似乎已經忘記您的自動播放設定。當您插入卸除式儲存裝置時 (如 USB 磁碟機),電腦可能還是會顯示提示問題,即使您已經選取選項,並且核取 [自動執行選取的動作]。這並非 Windows 已經忘記您的自動播放設定,而是因為記得太清楚。

當您為卸除式儲存裝置選取一個選項時,Windows 會記住該裝置的設定。如果您插入不同的裝置,將會有新的提示方塊出現,因為您並未指定此裝置的行為。此設計的意圖在於讓您可以將數位相機預設成 [檢視圖片],而將音樂播放器預設成 [播放音樂] (如果裝置沒有序號,那麼將該裝置插入到不同的 USB 連接埠時,電腦會將它視為另一個不同的裝置)。

對於 Windows XP 設計所造成的混淆,Windows Vista™ 已經變更此行為了。自動播放設定已視為全域性,而非針對個別裝置。如果您選取 [不要有任何動作],那麼 Windows Vista 就不會進行任何動作,無論您是否插入另一個裝置,或是在什麼位置插入。有時候要讓作業系統看起來更聰明,就是要讓它裝笨,正所謂「大智若愚」。

Raymond Chen 的網站 The Old New Thing (英文) (blogs.msdn.com/oldnewthing),以及採用相同標題做為個書名的出版品 (Addison-Wesley,2007),專門研討 Windows 的歷史及 Win32 的程式設計。聽說他在閒暇之餘會去改國中生的作文。

© 2008 Microsoft Corporation and CMP Media, LLC. 保留所有權利;未經允許,嚴禁部分或全部複製.