CSearcher - customizable, non-indexing local search

Submit portable freeware that you find here. It helps if you include information like description, extraction instruction, Unicode support, whether it writes to the registry, and so on.
Message
Author
hugonabais
Posts: 63
Joined: Sat Dec 24, 2016 6:00 am

Re: CSearcher

#16 Post by hugonabais »

Ok, I will leave the search by default with the syntax *.* (normal file system syntax).
And for people that want a Google style search I should remove the *text* button (that probably no one understands what is for) and should put a checkbox saying: "Google style search"? What would be more understandable? "Containing text", "Full search", "Google Style", "*text*?

About the software I think it still needs polishing, before massive distribution to the public but I feel it's on the right way.
When I'm at other persons computers and have to use Windows Explorer Search i really miss CSearcher :)

hugonabais
Posts: 63
Joined: Sat Dec 24, 2016 6:00 am

Re: CSearcher

#17 Post by hugonabais »

New version 1.1.0.0 released:

Image

I received some good suggestions and lots of things were changed and added in this version!
Please read the release notes and try it out.
The old patterns.txt file must be replaced by the new one.

I'll wait for feedback.

Version 1.1.0.0:
[alt] removed *text* buttons. Default search uses filesystem syntax. For searches that contain pattern you should check "Containing text"
[alt] multi patterns separator changed from ; to | because ; is a valid character in file system naming
[new] New option to manually add search folders. It also has a combobox with last searched directories (separeted by "|")
[new] When CSearcher starts whith no parameters, it will load last searched directories.
[alt] Removed clear "pattern" buttons. They were redundant
[fix] Small fix to menu icons (folder, notepad)
[new] Option to restore minimized CSearcher using a Windows HotKey. Ability to configure custom HotKey in Options menu.
[new] Results columns state (visibility, size) is now saved and restored after restart
[new] When opening previous patterns or last exclude patterns pressing the delete key will delete selected entry
[alt] asks for permission when register/unresgistering CSearcher in options menu, no more restarting csearcher with admin privileges
[new] check for command line folders access on program loading before adding to search dir box
Downloads:
·http://www.informan.pt/csearcher/CSearcher_1.1.0.0.zip Compressed archive.
·http://www.informan.pt/csearcher/CSearcher_1.1.0.0.exe Self-Extracting file.

Hugo

Stoik
Posts: 83
Joined: Fri Jan 29, 2016 12:25 pm

Re: CSearcher

#18 Post by Stoik »

Hugo,
this is wonderful !

If You leave it as it is, that would be just fine.
However, You may consider 3 minor improvements ...

First, after I remove a folder that I searched before,
next time I run CSearcher (without input data) - a popup will ask me if I want to add that missing folder.
Silly and redundant question isn't it ? If the folder does not exist, WHY would I add it ?
Also, no need to answer this question repeatedly for the rest of my life - ask me just once,
or add a check-box "Don't ask me again".

Second, some customized settings are not preserved in between sessions, and I think they should, for example :
- if I hide some of the boxes with that black arrow on the right, this setting should be preserved on restarting CSearcher,
- if I always select the tab "Filter results", that tab should remain selected on restarting CSearcher (currently it defaults to the 1st tab).

Third, the GUI is currently 100 % color-free (gray) - except for the "Filter results" tab's icons.
Add some color - not to make it flashy, but just to improve visual clarity,
for example make the Start button red or green (like the green traffic light), etc.
This will make it easier for the users to find their way around the GUI.
Perhaps add the possibility for users to customize the background color - to get away from that blinding white.

Keep up the great work !

hugonabais
Posts: 63
Joined: Sat Dec 24, 2016 6:00 am

Re: CSearcher

#19 Post by hugonabais »

Stoik wrote:Hugo,
this is wonderful !

If You leave it as it is, that would be just fine.
However, You may consider 3 minor improvements ...

First, after I remove a folder that I searched before,
next time I run CSearcher (without input data) - a popup will ask me if I want to add that missing folder.
Silly and redundant question isn't it ? If the folder does not exist, WHY would I add it ?
Also, no need to answer this question repeatedly for the rest of my life - ask me just once,
or add a check-box "Don't ask me again".

Second, some customized settings are not preserved in between sessions, and I think they should, for example :
- if I hide some of the boxes with that black arrow on the right, this setting should be preserved on restarting CSearcher,
- if I always select the tab "Filter results", that tab should remain selected on restarting CSearcher (currently it defaults to the 1st tab).

Third, the GUI is currently 100 % color-free (gray) - except for the "Filter results" tab's icons.
Add some color - not to make it flashy, but just to improve visual clarity,
for example make the Start button red or green (like the green traffic light), etc.
This will make it easier for the users to find their way around the GUI.
Perhaps add the possibility for users to customize the background color - to get away from that blinding white.

Keep up the great work !
First About this one, maybe the more logical thing is to never ask and just skip a non existing folder. There is really not any good reason to search in those folders. Do you agree?

Second
- the "minimize boxes" are not preserved because I think it's importante for the user to see the options before searching.
If you do not want to see them while searching and after searching just select this option: Auto hide options on start (I have this option selected on my daily searches)
Image

- the tab selected is a good setting to save and restore between each run, since I preserve now most of settings, I will implement it!

Third
I agree with you but I'll will need a good day of inspiration, because usually I'm not good at this kind of things... I'll try it.

As usual you're suggestions are very appreciated.

hugonabais
Posts: 63
Joined: Sat Dec 24, 2016 6:00 am

Re: CSearcher

#20 Post by hugonabais »

I released version 1.2.1.0.
There were a lot of changes:

Version 1.2.1.0:
[new] Added option to search files not containing text
[new] Added state icons to restrictions options
[new] Multiple size options: added GB
[alt] Options checkboxes state is no longer preserved. It was confusing.
[fix] Small Layout fixes
Version 1.2.0.0:
[fix] Improved error handling
[new] Multiple size options: autosize, in bytes, in KB, in MB
[new] Move UP/Down search folders changing search order
[fix] Small Layout fixes
[new] Added more custom icons to layout improving visual clarity
[new] Integrated with Notepad++. If installed option to open with Notepad++ is available
[new] New Command line option to add all available drives (ex:c:\ e:\) to search folders on startup
[new] New browse form that allows multiple folders paths to be selected (browse button)
[fix] Last column sort state is not preserved any more.
[fix] HotKey KeyCode not initialized correctly
[new] Tab selected is now preserved
[new] Results new option: Search with CSearcher (only directories)

Screenshot:
Image

new custom browse button:
Image

Stoik
Posts: 83
Joined: Fri Jan 29, 2016 12:25 pm

Re: CSearcher

#21 Post by Stoik »

Hugo, You got it !

Brilliant !
I like Your thinking, You have a clear idea of what You want,
but You are also very flexible to improve anything based on feedback.

I have two comments that You may want to think about :
context menu (in the results list), and search speed.

Context menu (in the results list) :
I am still struggling to open the parent folder (of a found file) with anything but Windows own File Explorer (file manager).
Ever since Windows 8 severely restricted it's own file manager, many people use other managers; I use XYplorer (Pro).
Also, many users have customized File Explorer context menus (which they like) to open files with their favorite programs.
So here is my suggestion: make a new option (in the Options menu on top) for people to choose if they want to use
Windows default context menu, or if they want to use Csearcher's customized menu.
Even better, You can let Windows' default context menu pop up, with a few of Your own items showing up in addition (like, on top).
XYplorer does that: it uses the Windows' own context menu and adds a few of it's own items, and You can customize this.
This is a very important part of a search program - how easy is it for You to handle files, once You find them,
for example to send an image to an OCR program via SendTo.
These conveniences are very important, but instead of You messing around with all of this,
let Windows take care of all of that (plus the other installed programs) - You just allow access to this existing context menu.

Search speed :

Even though CSearch'es speed is excellent,
I was surprised to find out that one other non-indexing program (portable & free) is still much faster - SwiftSearch.
Now, maybe that is the case only in the setting that I used: external hard-drive, NTFS file system.
I cannot give You the exact milliseconds, but SwiftSearch'es results are literally instant !
You may look into this, what are they doing right, that method may make Your searches even faster.
You probably already know all about it, but just in case - here are the links :
https://sourceforge.net/projects/swiftsearch/
http://www.softpedia.com/get/System/Fil ... arch.shtml
https://www.portablefreeware.com/forums ... hp?t=20417

User avatar
smaragdus
Posts: 2120
Joined: Sat Jun 22, 2013 3:24 am
Location: Aeaea

Re: CSearcher 1.2.1.0

#22 Post by smaragdus »

I had a look at CSearcher version 1.2.1.0 and in my opinion it has improved a lot compared to the previous version I tested- 1.0.1.1, good work, hugonabais!

@hugonabais
I have two question- how is Calculate MD5 context menu command supposed to work?
Why did you switch from superior 7z to inferior Zip?

hugonabais
Posts: 63
Joined: Sat Dec 24, 2016 6:00 am

Re: CSearcher

#23 Post by hugonabais »

Stoik wrote:Hugo, You got it !

Brilliant !
I like Your thinking, You have a clear idea of what You want,
but You are also very flexible to improve anything based on feedback.

I have two comments that You may want to think about :
context menu (in the results list), and search speed.

Context menu (in the results list) :
I am still struggling to open the parent folder (of a found file) with anything but Windows own File Explorer (file manager).
Ever since Windows 8 severely restricted it's own file manager, many people use other managers; I use XYplorer (Pro).
Also, many users have customized File Explorer context menus (which they like) to open files with their favorite programs.
So here is my suggestion: make a new option (in the Options menu on top) for people to choose if they want to use
Windows default context menu, or if they want to use Csearcher's customized menu.
Even better, You can let Windows' default context menu pop up, with a few of Your own items showing up in addition (like, on top).
XYplorer does that: it uses the Windows' own context menu and adds a few of it's own items, and You can customize this.
This is a very important part of a search program - how easy is it for You to handle files, once You find them,
for example to send an image to an OCR program via SendTo.
These conveniences are very important, but instead of You messing around with all of this,
let Windows take care of all of that (plus the other installed programs) - You just allow access to this existing context menu.

Search speed :

Even though CSearch'es speed is excellent,
I was surprised to find out that one other non-indexing program (portable & free) is still much faster - SwiftSearch.
Now, maybe that is the case only in the setting that I used: external hard-drive, NTFS file system.
I cannot give You the exact milliseconds, but SwiftSearch'es results are literally instant !
You may look into this, what are they doing right, that method may make Your searches even faster.
You probably already know all about it, but just in case - here are the links :
https://sourceforge.net/projects/swiftsearch/
http://www.softpedia.com/get/System/Fil ... arch.shtml
https://www.portablefreeware.com/forums ... hp?t=20417
Thanks for your kind words.

About Context menu:
Once again I appreciate your suggestions. I like the ideia of "making a new option (in the Options menu on top) for people to choose if they want to use
Windows default context menu, or if they want to use Csearcher's customized menu."
I agree with your arguments and I will work on it.

About the "search speed" question:
Curiously all the programs that I have found and used before, used real search on the actual file structure. I did not found any that had all the features I liked and pleased me completely. I initially did some researching and testing and was able to create a light and fast program, CSearcher was created.
To tell you the truth I was not aware of these kind of programs that use NTFS tricks to search very fast, until 2 days ago!!
My first reaction was one of discouragement. CSearcher was fast but not as fast as those programs after all the work I had :(

But then after some testing with a couple of those software (I found three, there are more) I found some seriously limitations in all of them and I was happy again:
- You need administrative rights to use them! This is a big problem for me and many people. I have several scenarios where this is not possible. For example at work most of my colleagues don't have administrative rights at their computers, at home I don't let my wife and my daughter have admin rights in their computers, etc..
- As the name suggests this NTFS MFT trick only works on NTFS volumes! For me this is also a big problem. I have several scenarios where this is not enough for me. I have several network shares at home, from NAS, from other computers. I have a couple FAT SD cards etc.
- It's not 100% accurate. This one I admit is not really a problem. But people should know that the NTFS MFT on the hard drive is not always in sync with the really file structure because of windows caching and other reasons. 99.99% of the times this will not pose a problem.
- The ones I tried when there are large amount of files, block the windows form with not responding message :(

With CSearcher I can scan my laptop C: 250.000 objects with CSearcher in around 10 seconds and with this NTFS trick program I can do it in 1 second.
With CSearcher I can scan my media PC 5 SATA drives with over 1 MILLION of objects with CSearcher is around 3 minutes and with one NTFS trick program I did it in 20 seconds. So it's not a huge difference to me, giving the advantages of CSearcher, and the possibility to use the filter results tab in CSearcher for quick changing of criteria.
With CSearcher I can search in my NAS shares, other PC shares, and my SD cards, with this NFTS trick programs I can't. So they are simply not comparable!

I admit that for some people those quick NTFS programs could be a better option. But for others I think there is "space" for CSearcher.

hugonabais
Posts: 63
Joined: Sat Dec 24, 2016 6:00 am

Re: CSearcher 1.2.1.0

#24 Post by hugonabais »

smaragdus wrote:I had a look at CSearcher version 1.2.1.0 and in my opinion it has improved a lot compared to the previous version I tested- 1.0.1.1, good work, hugonabais!

@hugonabais
I have two question- how is Calculate MD5 context menu command supposed to work?
Why did you switch from superior 7z to inferior Zip?

Calculate MD5 will display a hidden column in the right side displaying the MD5 Hash. you can copy this hash to clipboard in Edit: Copy MD5 from result

example: You search for some file and you found two. With this tool you can check if they are identical:
Image
You click MD5:
Image
You see the results (I clicked both):
Image

This is also useful to compare a downloaded file against the MD5 hash provided in the site for confirmation of correct file download.


About 7z:

This is a small tool, compacting in 7z or zip makes no real difference and I received an email complaining about this non-standard compression.
I decided to use zip for a more standard approach.

Stoik
Posts: 83
Joined: Fri Jan 29, 2016 12:25 pm

Re: CSearcher

#25 Post by Stoik »

OK, Hugo,
here is how You can make "the best file searcher in the world" !

What would make "the best file searcher in the world" ? I think we agree :
1. non-indexing -> so You do not have to wait 30-60 seconds for an index update before each search, or sacrifice RAM & CPU for ongoing updates,
2. user-friendly & customizable -> simple search (do not "kill" every layman with complicated syntax), customizable columns & context menus, etc.
3. results within a few seconds -> no more than "single digits", like 2-3 seconds is acceptable even for a very impatient user.


In items "1" & "2",
I think that CSearcher is already "the best file searcher in the world".

In item "3" (speed),
there is only one group of programs that can do a bit better - the "NTFS trick programs", as You call them.
SwiftSearch, the best of them in my opinion, is very user-unfriendly, not customizable, and seemingly abandoned in development.

Here is how You could apply the "NTFS trick" :
1. "under the hood", You will need 2 "engines" - the one You are already using - the "old engine", and a new "NTFS trick engine",
2. at the very start of the search, CSearcher will diagnose the file system, and then use either the "old engine", or the "NTFS trick engine", or both;
most computer owners have administrative rights to their own devices, but if they do not - CSearcher defaults to the "old engine".

I do not know how awkward it might be for a programmer to set it up as above, but the logical algorithm is extremely simple indeed :
NTFS ? - Yes, Admin Rights ? - Yes ... ... If both are Yes -> use new engine (and if either is No - use old engine).

This would make CSearcher truly world's number one,
since I am not aware of any other program that can do this,
even though all the "ingredients" are out there (there is a good number of "NTFS trick" programs out there).

Good luck !

hugonabais
Posts: 63
Joined: Sat Dec 24, 2016 6:00 am

Re: CSearcher

#26 Post by hugonabais »

Although said in layman's terms, it seems to me totally logical and feasible.
It will be a long and complicated endeavor, one that I can not promise to conclude. I have not even done any preliminary research on creating such an NTFS engine.
Most people have no idea of ​​the work and complexity involved in creating software code.
But we'll see, it may be that I gradually build something like you have described.

For now, I'll work on Context Menu options, some minor fixes and features ideas that are yet to be implemented.

Stoik
Posts: 83
Joined: Fri Jan 29, 2016 12:25 pm

Re: CSearcher

#27 Post by Stoik »

Hugo,
You are right.

The extra engine would be something for CSearcher version 2 or so; maybe some open source codes will help.
You won't know until You do that research and try. It may be very quick, or it may be a "I'll do it later" project.
The context menu options etc would very nicely wrap up Your current project (version 1 - final).

CSearcher is really great even as it is - without the special NFTS engine.
Almost all of my external hard-drives are NTFS & 2 GB in size of less.
I avoid larger external hard-drives, because file management becomes more difficult (e.g. backing up the whole drive takes forever, searches too)
and the consequences of drive failure are more devastating (You do not want to put too many eggs in one basket).
The difference between CSearcher and SwiftSearch is usually just a few seconds - no big deal, for the C drive it is 10 seconds vs 1 second, also OK.
Off course, for those "monster drives" with 1 million objects (e.g. photos) a difference between 3 minutes (CSearcher) and 20 seconds (SwiftSearch)
is significant - since, I think, most people would rather wait 20 seconds than 3 minutes, but not too many people use such "monster drives".

I do not think that I will have many more ideas to contribute as a user, since the user side if CSearcher is already perfect.
This is like the feed-back from the formula one driver to the car mechanics and engineers.
The faster search engine is something I will not be able to discuss with You, since I am not a programmer.

Good luck !
Last edited by Stoik on Fri Jan 13, 2017 11:57 pm, edited 1 time in total.

User avatar
webfork
Posts: 10821
Joined: Wed Apr 11, 2007 8:06 pm
Location: US, Texas
Contact:

Re: CSearcher

#28 Post by webfork »

hugonabais wrote:This is a small tool, compacting in 7z or zip makes no real difference and I received an email complaining about this non-standard compression. I decided to use zip for a more standard approach.
Certainly 7ZIP isn't always dramatically better in terms of space efficiency over ZIP, but in some cases the difference is huge. As a result, we have quite a few entries that use either RAR or 7z and it's not difficult to add a note on what tools to use (I generally recommend PeaExtractor).

Just in case that comes up in the future.

Additionally, there are ways to easily and rapidly generate a ZIP, 7zip, and/or self-extracting archive so people can use whichever suits them.

hugonabais
Posts: 63
Joined: Sat Dec 24, 2016 6:00 am

Re: CSearcher

#29 Post by hugonabais »

I have good news. CSearcher is mainly divided in two parts:
1 The main form that handles file operations and display results.
2 The search thread that focus on fast search without blocking main form.

I completely redesigned the code that handles the communication between the main form and the search thread, and I was able to squeeze a lot of performance when you are searching for hundreds of thousands of files.

Before:
Image

Now:
Image

This still is not the disk file table "trick" planed for future versions.

This improvement will benefit mainly of fast disks but it still provides some improvements in other disk.
I have a "slow" NAS share that had this results searching through +/- 300.000 files:
Windows Explorer: 1:30s
Csearcher "old": 1:10s
Csearcher "new": 0:59s

The limitation here was really the NAS speed!

I'm finishing testing and implementing other fixes and hope to release a new version in the next couple of days.

Stoik
Posts: 83
Joined: Fri Jan 29, 2016 12:25 pm

Re: CSearcher

#30 Post by Stoik »

Wonderful !

Post Reply