## f_chmod

ファイルまたはディレクトリの属性を変更します。

    FRESULT f_chmod (
      const XCHAR* FileName, /* ファイルまたはディレクトリ名へのポインタ */
      BYTE Attribute,        /* 設定値 */
      BYTE AttributeMask     /* 変更マスク */
    );

#### 引数

FileName
  属性変更対象のファイルまたはディレクトリのパス名の入った`'\0'`で終わる文字列を指定します。
Attribute
  設定する属性。指定可能な属性は次の通りで、これらの組み合わせで指定します。指定されなかった属性は解除されます。

  値 | 意味
  --- | ---
  AM_RDO | リード・オンリー
  AM_ARC | アーカイブ
  AM_SYS | システム
  AM_HID | ヒドゥン

AttributeMask
  変更する属性のマスク。指定した属性が設定または解除され、指定されなかった属性は状態が保持されます。`Attribute`と同じ値を使います。

#### 戻り値

FR_OK (0)
  正常終了。
FR_NO_FILE
  ファイルが見つからない。
FR_NO_PATH
  パスが見つからない。
FR_INVALID_NAME
  パス名が不正。
FR_INVALID_DRIVE
  ドライブ番号が不正。
FR_NOT_READY
  メディアがセットされていないなど、物理ドライブが動作不能状態。
FR_WRITE_PROTECTED
  メディアが書き込み禁止状態。
FR_DISK_ERR
  ディスク・エラーによる失敗。
FR_INT_ERR
  不正なFAT構造または内部エラーによる失敗。
FR_NOT_ENABLED
  その論理ドライブにワーク・エリアが与えられていない。
FR_NO_FILESYSTEM
  ディスク上に有効なFATボリュームが見つからない。

#### 解説

ファイルまたはディレクトリの属性を変更します。

#### 対応情報

`_FS_READONLY == 0`で、且つ`_FS_MINIMIZE == 0`のとき使用可能です。

#### 使用例

        /* リードオンリーをセット、アーカイブをクリア、その他は変更しない */
        f_chmod("file.txt", AM_RDO, AM_RDO | AM_ARC);

戻る