CIM_DataFile class
The CIM_DataFile class represents a named collection of data or executable code. Only instances of files on local fixed disks will be returned.
Important
The DMTF (Distributed Management Task Force) CIM (Common Information Model) classes are the parent classes upon which WMI classes are built. WMI currently supports only the CIM 2.x version schemas.
The following syntax is simplified from Managed Object Format (MOF) code and includes all inherited properties. Properties are listed in alphabetic order, not MOF order.
Syntax
[Dynamic, Provider("CIMWin32"), UUID("{8502C55A-5FBB-11D2-AAC1-006008C78BC7}"), DisplayName("All Files (CIM)"), AMENDMENT]
class CIM_DataFile : CIM_LogicalFile
{
string Caption;
string Description;
datetime InstallDate;
string Status;
uint32 AccessMask;
boolean Archive;
boolean Compressed;
string CompressionMethod;
string CreationClassName;
datetime CreationDate;
string CSCreationClassName;
string CSName;
string Drive;
string EightDotThreeFileName;
boolean Encrypted;
string EncryptionMethod;
string Name;
string Extension;
string FileName;
uint64 FileSize;
string FileType;
string FSCreationClassName;
string FSName;
boolean Hidden;
uint64 InUseCount;
datetime LastAccessed;
datetime LastModified;
string Path;
boolean Readable;
boolean System;
boolean Writeable;
string Manufacturer;
string Version;
};
Members
The CIM_DataFile class has these types of members:
Methods
The CIM_DataFile class has these methods.
Method | Description |
---|---|
ChangeSecurityPermissions | Changes the security permissions for the logical file specified in the object path. Implemented by WMI. |
ChangeSecurityPermissionsEx | Changes the security permissions for the logical file specified in the object path. Implemented by WMI. |
Compress | Uses NTFS compression to compress the logical file (or directory) specified in the object path. Implemented by WMI. |
CompressEx | Compresses the logical file (or directory) specified in the object path. Implemented by WMI. |
Copy | Copies the logical file (or directory) specified in the object path to the location specified by the input parameter. Implemented by WMI. |
CopyEx | Copies the logical file (or directory) specified in the object path to the location specified by the input parameter. Implemented by WMI. |
Delete | Deletes the logical file (or directory) specified in the object path. Implemented by WMI. |
DeleteEx | Deletes the logical file (or directory) specified in the object path. Implemented by WMI. |
GetEffectivePermission | Determines whether the caller has the aggregated permissions specified by the Permission argument. Implemented by WMI. |
Rename | Renames the logical file (or directory) specified in the object path. Implemented by WMI. |
TakeOwnerShip | Obtains ownership of the logical file specified in the object path. Implemented by WMI. |
TakeOwnerShipEx | Obtains ownership of the logical file specified in the object path. Implemented by WMI. |
Uncompress | Uncompresses the logical file (or directory) specified in the object path. Implemented by WMI. |
UncompressEx | Uncompresses the logical file (or directory) specified in the object path. Implemented by WMI. |
Properties
The CIM_DataFile class has these properties.
-
AccessMask
-
-
Data type: uint32
-
Access type: Read-only
-
Qualifiers: Schema ("Win32"), DisplayName ("Access Rights")
Bitmask that represents the access rights required to access or perform specific operations on the file. For bit values, see File and Directory Access Rights Constants.
Note
On FAT volumes, the FULL_ACCESS value is returned instead, which indicates no security has been set on the object.
This property is inherited from CIM_LogicalFile.
-
-
FILE_READ_DATA (file) or FILE_LIST_DIRECTORY (directory) (1)
-
FILE_WRITE_DATA (file) or FILE_ADD_FILE (directory) (2)
-
FILE_APPEND_DATA (file) or FILE_ADD_SUBDIRECTORY (directory) (4)
-
FILE_READ_EA (8)
-
FILE_WRITE_EA (16)
-
FILE_EXECUTE (file) or FILE_TRAVERSE (directory) (32)
-
FILE_DELETE_CHILD (directory) (64)
-
FILE_READ_ATTRIBUTES (128)
-
FILE_WRITE_ATTRIBUTES (256)
-
DELETE (65536)
-
READ_CONTROL (131072)
-
WRITE_DAC (262144)
-
WRITE_OWNER (524288)
-
SYNCHRONIZE (1048576)
Archive
-
Data type: boolean
-
Access type: Read-only
-
Qualifiers: Schema ("Win32"), DisplayName ("Should Be Archived")
If True, the file should be archived.
This property is inherited from CIM_LogicalFile.
Caption
-
Data type: string
-
Access type: Read-only
-
Qualifiers: MaxLen (64), DisplayName ("Caption")
A short textual description of the object.
This property is inherited from CIM_ManagedSystemElement.
Compressed
-
Data type: boolean
-
Access type: Read-only
-
Qualifiers: Schema ("Win32"), DisplayName ("Compressed")
If True, the file is compressed.
This property is inherited from CIM_LogicalFile.
CompressionMethod
-
Data type: string
-
Access type: Read-only
-
Qualifiers: DisplayName ("Compression Method")
Free-form string that indicates the algorithm or tool used to compress the logical file. If the compression scheme is unknown or not described, use "Unknown". If the logical file is compressed, but the compression scheme is unknown or not described, use "Compressed". If the logical file is not compressed, use "Not Compressed".
This property is inherited from CIM_LogicalFile.
CreationClassName
-
Data type: string
-
Access type: Read-only
-
Qualifiers: CIM_Key, DisplayName ("Class Name")
Name of the class.
This property is inherited from CIM_LogicalFile.
CreationDate
-
Data type: datetime
-
Access type: Read-only
-
Qualifiers: DisplayName ("Creation Date")
Date and time of the file's creation.
This property is inherited from CIM_LogicalFile.
CSCreationClassName
-
Data type: string
-
Access type: Read-only
-
Qualifiers: Propagated ("CIM_FileSystem.CSCreationClassName"), CIM_Key, DisplayName ("Computer System Class Name")
Class of the computer system.
This property is inherited from CIM_LogicalFile.
CSName
-
Data type: string
-
Access type: Read-only
-
Qualifiers: Propagated ("CIM_FileSystem.CSName"), CIM_Key, DisplayName ("Computer System Name")
Name of the computer system.
This property is inherited from CIM_LogicalFile.
Description
-
Data type: string
-
Access type: Read-only
-
Qualifiers: DisplayName ("Description")
A textual description of the object.
This property is inherited from CIM_ManagedSystemElement.
Drive
-
Data type: string
-
Access type: Read-only
-
Qualifiers: Fixed, Schema ("Win32"), DisplayName ("Drive")
Drive letter (including the colon that follows the drive letter) of the file.
Example: "c:"
This property is inherited from CIM_LogicalFile.
EightDotThreeFileName
-
Data type: string
-
Access type: Read-only
-
Qualifiers: Schema ("Win32"), DisplayName ("Eight Dot Three File Name")
DOS-compatible file name.
Example: "c:\progra~1"
This property is inherited from CIM_LogicalFile.
Encrypted
-
Data type: boolean
-
Access type: Read-only
-
Qualifiers: Schema ("Win32"), DisplayName ("Encrypted")
If True, the file is encrypted.
This property is inherited from CIM_LogicalFile.
EncryptionMethod
-
Data type: string
-
Access type: Read-only
-
Qualifiers: DisplayName ("Encryption Method")
Free-form string that identifies the algorithm or tool used to encrypt a logical file. If the encryption scheme is not indulged (for security reasons, for example), use "Unknown". If the file is encrypted, but either its encryption scheme is unknown or not disclosed, use "Encrypted". If the logical file is not encrypted, use "Not Encrypted".
This property is inherited from CIM_LogicalFile.
Extension
-
Data type: string
-
Access type: Read-only
-
Qualifiers: Fixed, Schema ("Win32"), DisplayName ("File Extension")
File name extension without the preceding period (dot).
Example: "txt", "mof", "mdb"
This property is inherited from CIM_LogicalFile.
FileName
-
Data type: string
-
Access type: Read-only
-
Qualifiers: Fixed, Schema ("Win32"), DisplayName ("File Name")
File name without the file name extension. Example: "MyDataFile"
This property is inherited from CIM_LogicalFile.
FileSize
-
Data type: uint64
-
Access type: Read-only
-
Qualifiers: DisplayName ("Size"), Units ("bytes")
Size of the file, in bytes.
For more information about using uint64 values in scripts, see Scripting in WMI.
This property is inherited from CIM_LogicalFile.
FileType
-
Data type: string
-
Access type: Read-only
-
Qualifiers: Schema ("Win32"), DisplayName ("File Type")
Descriptor that represents the file type indicated by the Extension property.
This property is inherited from CIM_LogicalFile.
FSCreationClassName
-
Data type: string
-
Access type: Read-only
-
Qualifiers: Propagated ("CIM_FileSystem.CreationClassName"), CIM_Key, DisplayName ("File System Class Name")
Class of the file system.
This property is inherited from CIM_LogicalFile.
FSName
-
Data type: string
-
Access type: Read-only
-
Qualifiers: Propagated ("CIM_FileSystem.Name"), CIM_Key, DisplayName ("File System Name")
Name of the file system.
This property is inherited from CIM_LogicalFile.
Hidden
-
Data type: boolean
-
Access type: Read-only
-
Qualifiers: Schema ("Win32"), DisplayName ("Hidden")
If True, the file is hidden.
This property is inherited from CIM_LogicalFile.
InstallDate
-
Data type: datetime
-
Access type: Read-only
-
Qualifiers: MappingStrings ("MIF.DMTF|ComponentID|001.5"), DisplayName ("Install Date")
Indicates when the object was installed. Lack of a value does not indicate that the object is not installed.
This property is inherited from CIM_ManagedSystemElement.
InUseCount
-
Data type: uint64
-
Access type: Read-only
-
Qualifiers: DisplayName ("Current File Open Count")
Number of "file opens" that are currently active against the file.
For more information about using uint64 values in scripts, see Scripting in WMI.
This property is inherited from CIM_LogicalFile.
LastAccessed
-
Data type: datetime
-
Access type: Read-only
-
Qualifiers: DisplayName ("Last Accessed")
Date and time the file was last accessed.
This property is inherited from CIM_LogicalFile.
LastModified
-
Data type: datetime
-
Access type: Read-only
-
Qualifiers: DisplayName ("Last Modified")
Date and time the file was last modified.
This property is inherited from CIM_LogicalFile.
Manufacturer
-
Data type: string
-
Access type: Read-only
-
Qualifiers: Schema ("Win32"), DisplayName ("Manufacturer")
Manufacturer string from the version resource (if one is present).
Name
-
Data type: string
-
Access type: Read-only
-
Qualifiers: Key
The Name property is a string representing the inherited name that serves as a key of a logical file instance within a file system. Full path names should be provided.
Example: C:\Windows\system\win.ini
This property is inherited from CIM_LogicalFile.
Path
-
Data type: string
-
Access type: Read-only
-
Qualifiers: Fixed, Schema ("Win32"), DisplayName ("Path")
Path of the file including the leading and trailing backslashes. Example: "\windows\system\"
This property is inherited from CIM_LogicalFile.
Readable
-
Data type: boolean
-
Access type: Read-only
-
Qualifiers: DisplayName ("Readable")
If True, the file can be read.
This property is inherited from CIM_LogicalFile.
Status
-
Data type: string
-
Access type: Read-only
-
Qualifiers: MaxLen (10), DisplayName ("Status")
String that indicates the current status of the object. Operational and non-operational status can be defined. Operational status can include "OK", "Degraded", and "Pred Fail". "Pred Fail" indicates that an element is functioning properly, but is predicting a failure (for example, a SMART-enabled hard disk drive).
Non-operational status can include "Error", "Starting", "Stopping", and "Service". "Service" can apply during disk mirror-resilvering, reloading a user permissions list, or other administrative work. Not all such work is online, but the managed element is neither "OK" nor in one of the other states.
This property is inherited from CIM_ManagedSystemElement.
Values include the following:
OK ("OK")
Error ("Error")
Degraded ("Degraded")
Unknown ("Unknown")
Pred Fail ("Pred Fail")
Starting ("Starting")
Stopping ("Stopping")
Service ("Service")
Stressed ("Stressed")
NonRecover ("NonRecover")
No Contact ("No Contact")
Lost Comm ("Lost Comm")
System
-
Data type: boolean
-
Access type: Read-only
-
Qualifiers: Schema ("Win32"), DisplayName ("System File")
If True, the file is a system file.
This property is inherited from CIM_LogicalFile.
Version
-
Data type: string
-
Access type: Read-only
-
Qualifiers: Schema ("Win32"), DisplayName ("Version")
Version string from the version resource (if one is present).
Writeable
-
Data type: boolean
-
Access type: Read-only
-
Qualifiers: DisplayName ("Writeable")
If True, the file can be written.
This property is inherited from CIM_LogicalFile.
Remarks
The CIM_DataFile class is derived from CIM_LogicalFile.
WMI implements the CIM_DataFile class and all of its methods. The CIM_DataFile class is a dynamic class.
This documentation is derived from the CIM class descriptions published by the DMTF. Microsoft may have made changes to correct minor errors, conform to Microsoft SDK documentation standards, or provide more information.
Due to security purposes, WMI does not directly support calling a remote computer and instructing it to copy files to itself. However, you can use the relevant programming language to call FTP or RoboCopy, for example.
Examples
The following VBS code sample describes how to perform a standard wildcard search on a datafile. Note that the backslash delimiters must be escaped with another backslash (\\). Also, when using "CIM_DataFile.FileName" in the WHERE clause, the WMIPRVSE process will scan all directories on any available storage device. This may take some time, especially if you have mapped remote shares, and can trigger antivirus warnings.
strComputer = "."
Set objWMIService = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colFiles = objWMIService.ExecQuery("Select * from CIM_DataFile where FileName Like '%~%'")
For Each objFile in colFiles
Wscript.Echo objFile.Name
Next
The following snippet limits the search range to a specific drive, path, and file extension.
Set colFiles = objWMIService.ExecQuery("Select * from CIM_DataFile where Drive='"C:"' And Path='"\\"' and Name Like '%~%' and Extension='doc' ")
The following PowerShell code sample retrieves a single attribute value.
$computer = "."
$path = "C:\\Program Files\\Microsoft SQL Server\\MSSQL.1\\MSSQL\\LOG\\"
$filename = "ERRORLOG"
$fullname = $path + $filename
$wql = 'SELECT Archive FROM CIM_DataFile WHERE Name = "' + $fullname + '"'
Get-WmiObject -ComputerName $computer -Query $wql | foreach { $_.Archive }
Requirements
Requirement | Value |
---|---|
Minimum supported client |
Windows Vista |
Minimum supported server |
Windows Server 2008 |
Namespace |
Root\CIMV2 |
MOF |
|
DLL |
|