サポート オンライン
日本語 | 英語  

powered byLive Search
文書番号: 120138 - 最終更新日: 2004年12月21日 - リビジョン: 1.2

ルート ディレクトリにファイルやフォルダを作成するとエラーが発生する

この記事は、以前は次の ID で公開されていました: JP120138
すべて展開する | すべて折りたたむ

現象

ルート ディレクトリにファイルやフォルダを作成すると、エラー メッセージが表示されることがあります。エラー メッセージは、ファイルやフォルダの作成方法によって異なります。

MS-DOS セッションで COPY コマンドを使用した場合は次のメッセージが表示されます。
   ディレクトリ エントリを作成できません。- <ファイル名>
ワードパッドやペイントでファイルをルート ディレクトリに保存しようとすると、次のメッセージが表示されます。
   <ファイル名> : このファイル名は無効です。
マイ コンピュータまたはエクスプローラでルート ディレクトリに新しいフォルダを作成しようとすると、次のメッセージが表示されます。
フォルダ "新しいフォルダ" を作成できません。ディスクに空きがあり、書き込み可能であることを確認してください。
注 : この資料の内容は、標準のファイル アロケーション テーブル (FAT16) ファイル システムを対象にしています。FAT32 ファイル システムには適用されません。FAT32 の詳細については、「サポート技術情報」 (Microsoft Knowledge Base) の次の資料を参照してください。
154997  (http://support.microsoft.com/kb/154997/EN-US/ ) Description of the FAT32 File System

原因

この問題は、ルート ディレクトリにある 512 個のエントリすべてが使用されている場合に発生します。ただし、Windows 95 では長いファイル名を格納するのに別のディレクトリ エントリを使用するため、ルート ディレクトリ内のファイルとフォルダの数が 512 個より少ない場合でもこの問題が発生する可能性があります。

状況

MS-DOS との互換性を保つため、Windows 95 では標準のファイル アロケーション テーブル (FAT16) ファイル システムを使用しています。FAT ドライブのルート ディレクトリではサイズやディスク上の格納場所が固定されています。すべてのハード ディスク ドライブは、ルート ディレクトリを格納するために 1 セクタ 512 バイトで 32 セクタを使用します。このため、ハード ディスク ドライブのルートディレクトリは 16 KB (32 セクタ x 512 バイト/セクタ = 16,384 バイト または 16 KB) に制限されています。

MS-DOS では、それぞれのファイルとフォルダごとに 1 つのディレクトリ エントリを使用しますが、Windows 95 では、長いファイル名とフォルダ名、関連付けられた 8.3 形式のエイリアスを格納するために別のディレクトリ エントリを使用します。そのため、ルート ディレクトリのファイルやフォルダの数が 512 個よりも少ない場合でも、ディレクトリ エントリが不足することがあります。

フォルダのサイズは固定されていないため、Windows 95 でフォルダに格納できるファイルやフォルダの数はディスクの空き容量によってのみ制限されます。このため、ファイル (プログラムやデータ) はルート ディレクトリ以外に格納することをお勧めします。

解決方法

以下の手順を実行して、ルート ディレクトリ エントリに空きを作成します。
  1. ドライブに無効な長いファイル名が存在しないかチェックし、以下の方法でドライブを最適化します。

    [マイ コンピュータ] または [エクスプローラ] でドライブのアイコンを右クリックし、表示されたメニューの [プロパティ] をクリックします。[ツール] タブの [チェックする] をクリックします。無効な長いファイル名が検出された場合は、デフォルトの修復を行います。[最適化する] をクリックします。
  2. ルート ディレクトリのファイル名やフォルダ名を大文字の 8.3 形式に準拠した名前に変更します。

    8.3 形式に準拠したファイル名またはフォルダ名で有効な文字は、英字 (A-Z)、数字 (0-9) と以下の特殊文字の組み合わせになります。
          $   ドル記号
          %   パーセント記号
          '   アポストロフィ
          `   単一引用符
          -   ハイフン
          @   アット記号
          {   左中かっこ
          }   右中かっこ
          ~   チルダ
          !   感嘆符
          #   シャープ記号
          (   左かっこ
          )   右かっこ
          &   アンパサンド
          _   アンダースコア
          ^   キャレット
    
  3. ルート ディレクトリからいくつかのファイルやフォルダを移動します。

詳細

MS-DOS FAT のルート ディレクトリには、各ファイルやフォルダごとにエントリが存在します。これらのディレクトリ エントリには、ファイル名、拡張子、属性、ファイルの最終更新日時、開始クラスタ番号、ファイルのサイズなどの情報が含まれています。それぞれのディレクトリ エントリではこれらの情報を保存するのに 32 バイトを使用します。ルート ディレクトリのサイズは 16 KB であるため、それぞれ 32 バイトのディレクトリ エントリを最大で 512 個格納できます。

Windows でファイルやフォルダに名前を付けるとき、システムは長いファイル名が設定可能なプライマリ ファイル名と MS-DOS の 8.3 形式に準拠したエイリアスを生成します。ファイル名やフォルダ名が既に 8.3 形式に準拠している場合は、1 つだけディレクトリ エントリを使用することになります。

注 : 8.3 形式に準拠するファイル名では、8.3 形式のエイリアス名で使用可能な文字だけを使用し、すべて大文字にする必要があります。

Windows 95/98 では、ファイル名やフォルダ名に 250 文字まで使用することができます。Windows 95 のファイル名に有効な文字は、MS-DOS のファイル名に有効なすべての文字、スペース、および以下の文字を追加したものです。
   +   プラス記号
   ,   カンマ
   .   ピリオド
   =   等号
   [   左角かっこ
   ]   右角かっこ
Windows 95 のファイル名では大文字と小文字を区別しませんが、その情報は保持されます。プライマリ ファイル名には、大文字、小文字、または大文字と小文字の混合名を付けることができます。たとえば、"MyText.txt" というファイル名を付けると、システムは大文字と小文字の形式を保持します。

ファイル名が 8.3 形式に準拠していない場合、Windows 95 はそのファイル名に対してエイリアスを自動生成します。そして、別のディレクトリ エントリを使用して 8.3 形式のエイリアスを格納します。プライマリ ファイル名が 14 文字以上の場合は、さらにもう 1 つディレクトリ エントリが使用されます。

以下の表に、Windows 95 におけるプライマリ ファイル名、8.3 形式のエイリアス、およびディレクトリ エントリの使用法を示します。
   プライマリ              8.3 形式の      使用する
   ファイル名             エイリアス      ディレクトリ エントリ
   -------------------------------------------------
   EXAMPLE.TXT           EXAMP~1.TXT         1
   Example.txt           EXAMP~1.TXT         2
   !@#$%&().{^}          !@#$%&~1.{^}        1
   !@#$%&().{+}          !@#$%&~1.{}         2
   LFN TEST.TXT          LFNTES~1.TXT        2
   This is a LFN.TEST    THISIS~1.TES        3
   This is a very long
    file name.test       THISIS~2.TES        4
注 : ファイル名が 14 文字以上の場合は、3 つ以上のディレクトリ エントリが必要です。

関連情報

この資料は米国 Microsoft Corporation から提供されている Knowledge Base の Article ID 120138  (http://support.microsoft.com/kb/120138/EN-US/ ) (最終更新日 2002-02-04) をもとに作成したものです。


この資料は以下の製品について記述したものです。
  • Microsoft Windows 95
  • Microsoft Windows 98 Standard Edition
キーワード: 
kbhowto kbtshoot diskmem win98 95 win95 kbdiskmemory KB120138
"Microsoft Knowledge Baseに含まれている情報は、いかなる保証もない現状ベースで提供されるものです。Microsoft Corporation及びその関連会社は、市場性および特定の目的への適合性を含めて、明示的にも黙示的にも、一切の保証をいたしません。さらに、Microsoft Corporation及びその関連会社は、本文書に含まれている情報の使用及び使用結果につき、正確性、真実性等、いかなる表明・保証も行ないません。Microsoft Corporation、その関連会社及びこれらの権限ある代理人による口頭または書面による一切の情報提供またはアドバイスは、保証を意味するものではなく、かつ上記免責条項の範囲を狭めるものではありません。Microsoft Corporation、その関連会社 及びこれらの者の供給者は、直接的、間接的、偶発的、結果的損害、逸失利益、懲罰的損害、または特別損害を含む全ての損害に対して、状況のいかんを問わず一切責任を負いません。(Microsoft Corporation、その関連会社 またはこれらの者の供給者がかかる損害の発生可能性を了知している場合を含みます。) 結果的損害または偶発的損害に対する責任の免除または制限を認めていない地域においては、上記制限が適用されない場合があります。なお、本文書においては、文書の体裁上の都合により製品名の表記において商標登録表示、その他の商標表示を省略している場合がありますので、予めご了解ください。"

サポート技術情報の翻訳

 

製品別 サポート ページ