heribertolugo / FileList

List all files in a given directory, and provide the option to copy or move selected files.
1 stars 0 forks source link

Extended Pause While Searching (app freezing) #56

Closed heribertolugo closed 4 years ago

heribertolugo commented 4 years ago

there is a timely pause on some files while searching. this is happening while fetching extended properties on LoadExtendedProperties() in FileData.cs. issue is that the loop is made to go through 1000 columns to fetch properties. if we could determine beforehand how many properties exist, then we can avoid unnecessary iterations.

each call to fetch a property which might not exist can take a few seconds using the win32 api. this gives the illusion that the application is frozen.

even better than getting the number of properties would be getting a list of indexes for available properties.

heribertolugo commented 4 years ago

another option, which would speed up search significantly, would be to wait until the extended properties are needed and fetch them at that time. this does or might raise the issue of data missing for using the pre-search filters, and also increase sort or filter time if one is used post search, this performance hit would happen only once however.