SFGAO

SFGAO bitfield 値は、アイテム (ファイルまたはフォルダー) またはアイテムのセットで取得できる属性を表します。 これらは、IShellFolder API と IShellItem API (特に IShellFolder::GetAttributesOf および IShellItem::GetAttributes) と共に使用されます。

定数/値 Description
SFGAO_CANCOPY
0x00000001
指定した項目をコピーできます。
SFGAO_CANMOVE
0x00000002
指定した項目を移動できます。
SFGAO_CANLINK
0x00000004
指定した項目のショートカットを作成できます。 この属性の値は 、DROPEFFECT_LINKと同じです。
名前空間拡張機能がこの属性を返す場合は、ドラッグ アンド ドロップ操作中に表示されるショートカット メニューに、既定のハンドラーを含むショートカットの 作成 エントリが追加されます。 拡張機能は、既定の代わりに リンク 動詞用の独自のハンドラーを実装することもできます。 拡張機能がそうする場合は、ショートカットを作成する必要があります。
[ショートカットの作成] 項目は、[Windows エクスプローラー ファイル] メニューと通常のショートカット メニューにも追加されます。
項目が選択されている場合、アプリケーションの IContextMenu::InvokeCommand メソッドは、リンクするように設定された CMINVOKECOMMANDINFO 構造体の lpVerb メンバーを使用して呼び出されます。 アプリケーションは、リンクの作成を担当します。
SFGAO_STORAGE
0x00000008
指定した項目は、IShellFolder::BindToObject を使用して IStorage オブジェクトにバインドできます。 名前空間の操作機能の詳細については、「 IStorage」を参照してください。
SFGAO_CANRENAME
0x00000010
指定した項目の名前を変更できます。 この値は基本的に提案であることに注意してください。すべての名前空間クライアントで項目の名前を変更できるわけではありません。 ただし、この属性を設定する必要があります。
SFGAO_CANDELETE
0x00000020
指定したアイテムは削除できます。
SFGAO_HASPROPSHEET
0x00000040
指定された項目にはプロパティ シートがあります。
SFGAO_DROPTARGET
0x00000100
指定された項目はドロップ ターゲットです。
SFGAO_CAPABILITYMASK
0x00000177
このフラグは、機能属性 (SFGAO_CANCOPY、SFGAO_CANMOVE、SFGAO_CANLINK、SFGAO_CANRENAME、SFGAO_CANDELETE、SFGAO_HASPROPSHEET、SFGAO_DROPTARGET) のマスクです。 呼び出し元は通常、この値を使用しません。
SFGAO_SYSTEM
0x00001000
Windows 7 以降。 指定された項目はシステム項目です。
SFGAO_ENCRYPTED
0x00002000
指定された項目は暗号化され、特別なプレゼンテーションが必要になる場合があります。
SFGAO_ISSLOW
0x00004000
( IStream またはその他のストレージ インターフェイスを介して) 項目にアクセスすることは、低速な操作であることが予想されます。 アプリケーションは、SFGAO_ISSLOWでフラグが設定された項目にアクセスしないようにする必要があります。
メモ: 通常、アイテムのストリームを開くと、常に低速な操作になります。 SFGAO_ISSLOWは、ネットワーク接続が遅い場合やオフライン (FILE_ATTRIBUTE_OFFLINE) ファイルの場合など、特に低速であることが予想されることを示します。 ただし、SFGAO_ISSLOWのクエリはそれ自体が低速な操作です。 アプリケーションでは、バックグラウンド スレッドでのみSFGAO_ISSLOWクエリを実行する必要があります。 PKEY_FileAttributes プロパティの取得や FILE_ATTRIBUTE_OFFLINE のテストなどの別のメソッドを、SFGAO_ISSLOWを含むメソッド呼び出しの代わりに使用できます。
SFGAO_GHOSTED
0x00008000
指定された項目は淡色表示され、ユーザーは使用できません。
SFGAO_LINK
0x00010000
指定された項目はショートカットです。
SFGAO_SHARE
0x00020000
指定したオブジェクトは共有されます。
SFGAO_READONLY
0x00040000
指定された項目は読み取り専用です。 フォルダーの場合は、これらのフォルダーに新しいアイテムを作成できないことを意味します。 これは、SHCOLUMNDATA 構造体で IColumnProvider::GetItemData によって取得されるFILE_ATTRIBUTE_READONLY フラグで指定された動作と混同しないでください。 FILE_ATTRIBUTE_READONLY Win32 ファイル システム フォルダーには意味がありません。
SFGAO_HIDDEN
0x00080000
[フォルダーの設定] で [隠しファイルとフォルダーの表示] オプションが有効になっていない限り、アイテムは非表示になり、表示されません。
SFGAO_DISPLAYATTRMASK
0x000FC000
使用しないでください。
SFGAO_NONENUMERATED
0x00100000
アイテムは未設定のアイテムであり、非表示にする必要があります。 IShellFolder::EnumObjects メソッドによって作成された列挙子からは返されません。
SFGAO_NEWCONTENT
0x00200000
項目には、特定のアプリケーションによって定義された新しいコンテンツが含まれます。
SFGAO_CANMONIKER
サポートされていません。
SFGAO_HASSTORAGE
サポートされていません。
SFGAO_STREAM
0x00400000
アイテムにストリームが関連付けられていることを示します。 このストリームには、riid パラメーターに IID_IStream を指定して IShellFolder::BindToObject または IShellItem::BindToHandler を呼び出してアクセスできます。
SFGAO_STORAGEANCESTOR
0x00800000
この項目の子には、 IStream または IStorage を使用してアクセスできます。 これらの子には、SFGAO_STORAGEまたはSFGAO_STREAMでフラグが設定されます。
SFGAO_VALIDATE
0x01000000
入力として指定すると、SFGAO_VALIDATEは、フォルダーまたはシェル項目配列に含まれる項目が存在することを検証するようにフォルダーに指示します。 これらの項目が 1 つ以上存在しない場合、 IShellFolder::GetAttributesOf および IShellItemArray::GetAttributes はエラー コードを返します。 このフラグは [out] 値として返されることはありません。
ファイル システム フォルダーと共に使用する場合、SFGAO_VALIDATEは、指定したアイテムに対して蓄積された 可能性がある IShellFolder2::GetDetailsEx のクライアントによって取得されたキャッシュされたプロパティを破棄するようにフォルダーに指示します。
SFGAO_REMOVABLE
0x02000000
指定された項目はリムーバブル メディア上にあるか、それ自体がリムーバブル デバイスです。
SFGAO_COMPRESSED
0x04000000
指定された項目は圧縮されます。
SFGAO_BROWSABLE
0x08000000
指定した項目は、Web ブラウザーまたは Windows エクスプローラー フレーム内でホストできます。
SFGAO_FILESYSANCESTOR
0x10000000
指定したフォルダーは、ファイル システム フォルダーであるか、ファイル システム (SFGAO_FILESYSTEM) フォルダーである少なくとも 1 つの子孫 (子、孫、またはそれ以降) を含みます。
SFGAO_FOLDER
0x20000000
指定されたアイテムはフォルダーです。 一部のアイテムには、SFGAO_STREAMとSFGAO_FOLDERの両方でフラグを設定できます。たとえば、ファイル名拡張子が .zip 圧縮ファイルなどです。 一部のアプリケーションでは、ファイルとコンテナーの両方の項目をテストするときに、このフラグが含まれる場合があります。
SFGAO_FILESYSTEM
0x40000000
指定されたフォルダーまたはファイルは、ファイル システムの一部です (つまり、ファイル、ディレクトリ、またはルート ディレクトリ)。 アイテムの解析された名前は、有効な Win32 ファイル システム パスと見なすことができます。 これらのパスには、UNC またはドライブ文字ベースのいずれかを指定できます。
SFGAO_STORAGECAPMASK
0x70C50008
このフラグは、ストレージ機能属性 (SFGAO_STORAGE、SFGAO_LINK、SFGAO_READONLY、SFGAO_STREAM、SFGAO_STORAGEANCESTOR、SFGAO_FILESYSANCESTOR、SFGAO_FOLDER、SFGAO_FILESYSTEM) のマスクです。 呼び出し元は通常、この値を使用しません。
SFGAO_HASSUBFOLDER
0x80000000
指定したフォルダーにはサブフォルダーがあります。 SFGAO_HASSUBFOLDER属性はアドバイザリに過ぎません。サブフォルダーが含まれていない場合でも、シェル フォルダーの実装によって返される可能性があります。 ただし、逆にSFGAO_HASSUBFOLDERを返さない場合は、フォルダー オブジェクトにサブフォルダーがないことを明確に示しています。
サブフォルダーが存在するかどうかを判断するためにかなりの時間が必要な場合は常に、SFGAO_HASSUBFOLDERを返すようにすることをお勧めします。 たとえば、フォルダーがネットワーク ドライブ上にある場合、シェルは常にSFGAO_HASSUBFOLDERを返します。
SFGAO_CONTENTSMASK
0x80000000
このフラグはコンテンツ属性のマスクであり、現時点ではSFGAO_HASSUBFOLDERのみです。 呼び出し元は通常、この値を使用しません。
SFGAO_PKEYSFGAOMASK
0x81044000
PKEY_SFGAOFlags プロパティでマスクを使用して、計算が遅くなったり、コンテキストが不足していると見なされる属性 (SFGAO_ISSLOW、SFGAO_READONLY、SFGAO_HASSUBFOLDER、SFGAO_VALIDATE) を決定します。 呼び出し元は通常、この値を使用しません。

要件

要件
サポートされている最小のクライアント
Windows Vista [デスクトップ アプリのみ]
サポートされている最小のサーバー
Windows Server 2008 [デスクトップ アプリのみ]
ヘッダー
Shobjidl.h
IDL
Shobjidl.idl

関連項目

IShellFolder::GetAttributesOf

IShellFolder::P arseDisplayName

IShellItem::GetAttributes

IShellItemArray::GetAttributes