示例#1
0
 public void CopyTo(IntPtr ptr, bool isUnicode)
 {
     if (ptr != IntPtr.Zero)
     {
         if (isUnicode)
         {
             var data = new TcFindDataW {
                 FileAttributes    = (int)Attributes,
                 CreationTime      = TcUtils.GetFileTime(CreationTime),
                 LastAccessTime    = TcUtils.GetFileTime(LastAccessTime),
                 LastWriteTime     = TcUtils.GetFileTime(LastWriteTime),
                 FileSizeHigh      = TcUtils.GetUHigh(FileSize),
                 FileSizeLow       = TcUtils.GetULow(FileSize),
                 Reserved0         = Reserved0,
                 Reserved1         = Reserved1,
                 FileName          = FileName,
                 AlternateFileName = string.Empty
             };
             Marshal.StructureToPtr(data, ptr, false);
         }
         else
         {
             var data = new TcFindData {
                 FileAttributes    = (int)Attributes,
                 CreationTime      = TcUtils.GetFileTime(CreationTime),
                 LastAccessTime    = TcUtils.GetFileTime(LastAccessTime),
                 LastWriteTime     = TcUtils.GetFileTime(LastWriteTime),
                 FileSizeHigh      = TcUtils.GetUHigh(FileSize),
                 FileSizeLow       = TcUtils.GetULow(FileSize),
                 Reserved0         = Reserved0,
                 Reserved1         = Reserved1,
                 FileName          = FileName,
                 AlternateFileName = string.Empty
             };
             Marshal.StructureToPtr(data, ptr, false);
         }
     }
 }