Windows NT 4.0 で作成したショートカットが UNC パスに解決される

この記事は、以前は次の ID で公開されていました: JP158682
この資料は、アーカイブされました。これは "現状のまま" で提供され、更新されることはありません。

重要 : この資料には、レジストリの編集方法が記載されています。万一に備えて、編集の前には必ずレジストリの復元方法を理解しておいてください。復元方法の詳細については、Regedit.exe のヘルプの「レジストリを復元する」、または Regedt32.exe のヘルプの「レジストリ キーを復元する」を参照してください。
現象
Windows NT ユーザーがプログラムのショートカットをクリックしたときに、ネットワーク パスワードの入力を要求されたが、ショートカットのプロパティにはローカル コンピュータへの相対パスが指定されています。

この問題が顕著に表れるのは、サーバー ベースのプロファイルが使用され、ショートカットを作成したコンピュータ以外のコンピュータにユーザーがログオンした場合です。
原因
コンピュータ上で作成されたショートカットにより、\\<コンピュータ名>\admin$ などの UNC (汎用名前付け規則) パスが .lnk ファイルに自動的に埋め込まれます。デフォルトのショートカット解決方法は、そのファイルが存在する可能性のある他のパス (セカンダリ パスまたは "相対パス") を探す前に、リンクをファイルの元の場所 ("絶対パス") で解決する方法です。この場合は、元のファイルへの UNC パスが常に到達可能なため、リンクはローカル パスを使用する方法では解決されなくなります。その結果、ショートカットを使用しようとするユーザーは、リンクを作成したコンピュータの管理パスワードを入力するように要求されます。
解決方法
最新の Windows NT 4.0 Service Pack に含まれている新しい Shell32.dll を適用した後、コンピュータまたはユーザーに対し、下記のいずれかの方法を使ってレジストリ設定を変更します。これにより、ローカル相対パスへの UNC パスを持つすべての既存のショートカットが変更されます。

システム ポリシー エディタを使用して、ユーザーがドメインにログオンしたときに適用されるポリシー ファイルを作成します。Windows NT のポリシーを使ってレジストリの変更を適用すると、移動プロファイルを使用しているユーザーに対して変更を適用することができます。

ワークグループ環境の場合は、コンピュータ上の各ユーザーに対してポリシーを適用します。ポリシーの変更はユーザー単位を原則とし、ポリシー キーには管理者の権限が必要とされるため、レジストリの設定を変更するユーザーに管理者の権限が必要です。

別の方法として、"Windows NT Server 4.0 リソース キット Supplement One" に添付されている Shortcut.exe を使用することもできます。このユーティリティを使って実際のショートカット ファイルを修正し、ショートカット単位でネットワーク ショートカットの自動リンク トラッキングを無効にします。

コンピュータごとに変更を適用する

この問題を解決するには、Windows NT 4.0 または Windows NT Server 4.0 Terminal Server Edition の最新の Service Pack を入手します。関連情報を参照するには、以下の「サポート技術情報」 (Microsoft Knowledge Base) をクリックしてください。
152734 Windows NT 4.0 の最新の Service Pack を入手する方法


注 : Internet Explorer 4.0 および Active Desktop を使用している場合には、Internet Explorer と Windows NT の誤動作の原因となる場合があるため、Shell32.dll をインストールしないでください。ただし、レジストリの変更は可能です。Active Desktop を使用せずに Internet Explorer 4.0 を使用している場合は、前述のとおり Shell32.dll をインストールしてください。

警告 : レジストリ エディタの使い方を誤ると、深刻な問題が発生することがあります。最悪の場合、オペレーティング システムの再インストールが必要になることがあります。マイクロソフトは、レジストリ エディタの誤用により発生した問題に関しては、一切責任を負わないものとします。レジストリ エディタは、自己の責任においてご使用ください。

レジストリの編集方法の詳細については、レジストリ エディタ (Regedit.exe) のヘルプ トピック「キーと値の変更」、または Regedt32.exe のヘルプ トピック「レジストリ情報の追加と削除」と「レジストリ情報の編集」を参照してください。レジストリを編集する前にレジストリのバックアップを必ず作成してください。

これらのパラメータを変更するには、次の手順を実行します。
  1. レジストリ エディタ (Regedt32.exe) を起動します。
  2. HKEY_LOCAL_MACHINE サブツリーから、次のキーに移動します。
    \Software\Microsoft\Windows\CurrentVersion\Policies\Explor


    注 : 存在しない場合は、Explorer サブキーを追加します。
  3. [編集] メニューの [値の追加] をクリックします。
  4. 次の値を追加します。
    値の名前 : LinkResolveIgnoreLinkInfoデータ型 : REG_DWORDデータ : 1 (有効)						
  5. [OK] をクリックします。
  6. レジストリ エディタを終了します。
  7. ユーザーがログオフして再びログオンすると、変更が有効になります。

ドメイン内のユーザーに変更を適用する

ドメイン環境では、Windows NT のポリシーを使用して変更を適用することができます。Windows NT Service Pack 2 以降に添付されている Winnt.adm ファイルには、ポリシーの変更を有効にするレジストリ設定が含まれています。
  1. システム ポリシー エディタを起動します。
  2. 次の項目を有効にします。

    [ローカル ユーザー] - [Windows NT シェル] - [制限] - [リンク ファイルの追跡を使用不可にする]
  3. システム ポリシー エディタの使用方法の詳細については、システム ポリシー エディタのヘルプまたはリソース キットを参照してください。

個々のユーザーを変更する

警告 : レジストリ エディタの使い方を誤ると、深刻な問題が発生することがあります。最悪の場合、オペレーティング システムの再インストールが必要になることがあります。マイクロソフトは、レジストリ エディタの誤用により発生した問題に関しては、一切責任を負わないものとします。レジストリ エディタは、自己の責任においてご使用ください。

レジストリの編集方法の詳細については、レジストリ エディタ (Regedit.exe) のヘルプ トピック「キーと値の変更」、または Regedt32.exe のヘルプ トピック「レジストリ情報の追加と削除」と「レジストリ情報の編集」を参照してください。レジストリを編集する前にレジストリのバックアップを必ず作成してください。

これらのパラメータを変更するには、次の手順を実行します。
  1. レジストリ エディタ (Regedt32.exe) を起動します。
  2. HKEY_CURRENT_USER サブツリーから、次のキーに移動します。
    \Software\Microsoft\Windows\CurrentVersion\Policies\Explor
  3. [編集] メニューの [値の追加] をクリックします。
  4. 次の値を追加します。
    値の名前 : LinkResolveIgnoreLinkInfoデータ型 : REG_DWORDデータ : 1 (有効)						
  5. [OK] をクリックします。
  6. レジストリ エディタを終了します。
  7. ユーザーがログオフして再びログオンすると、変更が有効になります。
詳細
Shell32.dll ファイルを適用すると、相対パスが意図したとおりに解決されます。ショートカットに相対パスがなく、ユーザーが権限を持たない、または接続できない実行可能ファイルやファイルへの UNC 名が含まれている場合には、次のようなメッセージが表示されます。
このショートカットから呼び出すファイルまたはフォルダ '<filename>' が見つかりません。
関連情報を参照するには、以下の「サポート技術情報」 (Microsoft Knowledge Base) をクリックしてください。
150215 ネットワークのショートカットの自動解決を無効にする
195887 Windows NT 4.0 TSE でショートカットの実行にパスワードの入力が必要となる
状況
マイクロソフトでは、この問題を Windows NT 4.0 および Windows NT Server 4.0 Terminal Server Edition の問題として認識しています。この問題は Windows NT 4.0 Service Pack 4.0 および Windows NT Server 4.0 Terminal Server Edition Service Pack 4 で最初に修正されました。

修正プログラム (英語版) の属性は次のとおりです。ただし、これより新しい修正プログラムがリリースされている可能性もあります。
   日付           時刻          サイズ          ファイル名        プラットフォーム   10/21/98    02:26p      1,296,656     Shell32.dll        Intel   10/21/98    02:26p        308,916     Shell32.dbg        Intel   10/21/98    02:37p      1,880,848     Shell32.dll        Alpha   10/21/98    02:37p        265,604     Shell32.dbg        Alpha				
プロパティ

文書番号:158682 - 最終更新日: 02/11/2014 05:29:34 - リビジョン: 2.1

  • Microsoft Windows NT Server 4.0 Terminal Server
  • Microsoft Windows NT Workstation 4.0 Developer Edition
  • Microsoft Windows NT Server 4.0 Standard Edition
  • kbnosurvey kbarchive kbhotfixserver kbqfe kbbug kbfix kbnetwork kbui KB158682
フィードバック