CE_FIND_DATA (rapi)
Last changed: -194.110.178.3

.
Summary

C# Signature:

    [StructLayout(LayoutKind.Sequential, CharSet=CharSet.Unicode)]
    public struct CE_FIND_DATA {

        public uint      dwFileAttributes;
        public FILETIME      ftCreationTime;
        public FILETIME      ftLastAccessTime;
        public FILETIME      ftLastWriteTime;
        public uint      nFileSizeHigh;
        public uint      nFileSizeLow;
        public uint      dwOID;
        [MarshalAs(UnmanagedType.ByValTStr, SizeConst=520)]
        public string cFileName;
    };

VB Signature:

TODO

User-Defined Types:

Notes:

Tips & Tricks:

Please add some!

Sample Code:

    static public string [] CeFiles( string sFileSpec, System.IO.FileAttributes faFlags )
    {
        ArrayList    al = new ArrayList();

        CE_FIND_DATA findData = new CE_FIND_DATA();

        findData.dwFileAttributes = (uint) faFlags;

        int hResult = CeFindFirstFile( sFileSpec, ref findData );

        int nFiles = 0;

        if ( hResult != -1 ) {

        al.Add( findData.cFileName );
        nFiles ++;

        int ret = CeFindNextFile( hResult, ref findData );
        while ( ret != 0 && ret != ERROR_NO_MORE_FILES ) {

            al.Add( findData.cFileName );
            nFiles ++;

            ret = CeFindNextFile(hResult, ref findData);
        }
        }
        return ((string []) al.ToArray( typeof( string ) ));
    }

Alternative Managed API:

Do you know one? Please contribute it!

Documentation