ICE67

ICE67 會檢查非公告快捷方式的目標是否屬於與快捷方式本身相同的元件,或目標群組件的屬性確保它不會變更安裝位置。

如果目標群組件變更狀態,而且來源元件沒有,則無法修正 ICE67 所報告的警告或錯誤,可能會導致快捷方式無效。 例如,當目標檔案的元件設定為從來源執行時,重新安裝會將元件變更為本機時,會導致包含未重新安裝快捷方式的元件。 因此,快速鍵指向不正確位置。

請注意,在某些情況下,針對快捷方式使用不同的元件是無法避免的。 例如,如果在使用者設定檔中建立快捷方式,並將檔案安裝到非設定檔目錄,您可能無法針對這兩個數據片段使用相同的元件。 (這會導致多使用者案例失敗,例如 ICE57) 中所述的情況。 在此情況下,您可以使用公告的快捷方式來達成您想要的行為,或者您可以直接確保目標群組件無法從執行來源變更為本機。

結果

如果非公告快捷方式的目標不屬於與快捷方式本身相同的元件,或目標群組件的屬性不保證安裝位置不會變更,ICE67 會傳回錯誤或警告。

範例

ICE67 會針對顯示的範例報告下列警告和錯誤。

The shortcut 'Shortcut1' is a non-advertised shortcut with a file target. The shortcut and target are installed by different components, and the target component can run locally or from source.

Shortcut1 是由 Component2 安裝,但其目標檔案 File1 是由 component1 所安裝。 目標群組件標示為選擇性 (表示它可以是本機或從來源執行) 。 其中一個可能會造成問題的情況是,如果 Component1 從執行來源變更為本機。 這會導致 Shortcut1 指向不正確位置。

若要修正此警告,請將快捷方式安裝為 Component1 的一部分,或將 Component1 標示為 LocalOnly 或 SourceOnly。

檔案資料表 (部分)

檔案 元件_
File1 Component1

 

快速鍵資料表 (部分)

快速鍵 元件_ 目標
Shortcut1 Component2 [#File1]

 

元件資料表 (部分)

元件 屬性
Component1 2

 

ICE 參考