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 によってインストールされます。 ターゲット コンポーネントは省略可能としてマークされます (つまり、ローカルまたはソースから実行できます)。 問題を引き起こす可能性のある状況の 1 つは、Component1 がソースからの実行からローカルに変更された場合です。 これにより、Shortcut1 は無効な場所を指します。
この警告を修正するには、ショートカットを Component1 の一部としてインストールするか、Component1 を LocalOnly または SourceOnly としてマークします。
ファイル テーブルの (部分)
ファイル | コンポーネント_ |
---|---|
File1 | Component1 |
ショートカット テーブルの (一部)
近道 | コンポーネント_ | ターゲット |
---|---|---|
Shortcut1 | Component2 | [#File1] |
コンポーネント テーブルの (部分)
コンポーネント | 属性 |
---|---|
Component1 | 2 |
関連トピック