8.5.16 SetFileAttributeまたはSetFileAttrフォルダ/ファイルの属性を設定する

機能
フォルダ,またはファイルの属性を設定します。
JP1/Script 07-50以降では,ラージファイルが使用できます。
形式

SetFileAttribute ( PathName , Attribute1 〔, Attribute2 , …〕 )
SetFileAttr ( PathName , Attribute1 〔, Attribute2 , …〕 )

指定項目
PathName
設定するフォルダ,またはファイルのフルパスを文字列,または値を格納した変数名で指定します。
Attribute18
設定する属性を指定します。複数の属性を指定できます。
ただし,ATTR_NORMALは単独で指定した場合にだけ有効です。
この値は次のようになります。
意味
ATTR_READONLY読み込み専用ファイル
ATTR_HIDDEN隠しファイル
ATTR_ARCHIVEアーカイブファイル
ATTR_SYSTEMシステムファイル
ATTR_TEMPORARY一時ファイル
ただし,PathNameにフォルダを指定した場合は,この属性は指定できません。
ATTR_NORMALすべての属性を取り除きます。この属性は,単独で指定したときだけ有効です。
PathNameで指定されたフォルダ,またはファイルに対して,Attribute1~8で指定された属性だけを操作する場合,次のどれかを指定します。
意味
ATTR_ON (05-10以降)Attribute18で指定された属性だけを追加します。
ATTR_OFF (05-10以降)Attribute18で指定された属性だけを取り除きます。
JP1/Script 06-00以降では,複数の属性を指定する場合,設定する属性を一つずつ格納した一次元の配列変数を変数名で指定することもできます。
説明
指定されたフォルダ,またはファイルに指定された属性を設定します。複数の属性を設定できます。コマンドが正常に実行された場合は真(True)を,エラーが発生した場合は偽(False)を,コマンドの実行結果として返します。
フォルダ,またはファイルの複数の属性を取得するには,GetFileAttributeコマンドを,フォルダ,またはファイルの一つの属性をチェックするには,IsFileAttributeコマンドを使用します。
補足
Windows Vistaで環境変数ProgramFiles(通常はシステムドライブのProgram Filesフォルダ),またはWinDir(通常はシステムドライブのWindowsフォルダ)に設定されているフォルダ,フォルダ下のフォルダ,またはフォルダ下のファイルを指定する場合,注意が必要です。詳細は,「1.8.4 コマンドの動作」を参照してください。

' ファイルのアーカイブ属性を取り除いておき,ファイル操作後にアーカイブ属性を
' チェックして,ファイルが更新されているかどうかを判定する。
Dim  file1
file1 = "C:¥TEMP¥loging.tmp"
If  IsFileAttribute ( file1 ,ATTR_ARCHIVE ) = True  Then
 SetFileAttribute ( file1 ,ATTR_ARCHIVE ,ATTR_OFF )
End
   :
(ファイル操作)
   :
If  IsFileAttribute ( file1 ,ATTR_ARCHIVE ) = True  Then
 MessageBox ( file1+"は更新されました。" )
Else
 MessageBox ( file1+"は更新されませんでした。" )
End

対象バージョン
JP1/Script 01-00以降