QuickSearch eXtended

Discuss and announce Total Commander plugins, addons and other useful tools here, both their usage and their development.

Moderators: sheep, Hacker, Stefan2, white

Post Reply
User avatar
DrShark
Power Member
Power Member
Posts: 1353
Joined: 2006-11-03, 22:26 UTC
Location: Kyiv, 68/262

Post by *DrShark » 2017-03-28, 19:31 UTC

2Samuel
QSX, if used at least once in one TC instance, adds its own gui panel to all TC instances, even if they (TC instances) configured not to use QuickSearch plugin (tcmatch.dll). Details in this topic. Reproduced with tcmatch.dll of QSX with versions 2.0.0.0, 2.2.1.0, and using following tcmatch.ini:

Code: Select all

[general]
simple_search_activate_char=
regex_search_activate_char=?
leven_search_activate_char=<
srch_activate_char=*
preset_activate_char=>
simple_search_match_beginning_activate_char=^
and_separator_char=" "
or_separator_char=|
wdx_separator_char=/
negate_char=!
case_sensitive=0
allow_empty_result=1
filter_files_and_folders=3
match_beginning=0
use_pinyin=0
use_korean=0
[wdx]
debug_output=1
wdx_cache=1000
[gui]
override_search=2
invert_result=0
one_line_gui=1
show_presets=0
[presets]
t=.htm|.css|.js|.xml|.php|.dtd|.swf|.txt|.tmp|.asp|.aspx|.axd
Android 4.3.1 no root, kernel 08.09.2016; Vista Home Premium SP2 rus 32 bit
TC #149847 Personal licence

Cuz we're all in this together, We're here to make it right

User avatar
Samuel
Power Member
Power Member
Posts: 1871
Joined: 2003-08-29, 15:44 UTC
Location: Brandenburg, Germany
Contact:

Post by *Samuel » 2017-04-01, 06:54 UTC

olexn wrote:Please, fix ukrainian translations:
pastebin com fwFn0RGL
The index that differ: 8, 13, 16, 63
Thanks.
Hi olexn, could you please redeploy. I can't download the content anymore.

User avatar
Samuel
Power Member
Power Member
Posts: 1871
Joined: 2003-08-29, 15:44 UTC
Location: Brandenburg, Germany
Contact:

Re: QuickSearch eXtended 2.2.4 together with a wdx-Plugin

Post by *Samuel » 2017-04-01, 06:59 UTC

tuska wrote:2Samuel
Hi,
I have difficulties to get a prompt search-result when using QuickSearch eXtended 2.2.4 together with a wdx-Plugin:
FileDiz.wdx64 Long description 1 in connection with TC-comments. -> http://totalcmd.net/plugring/FileDiz.html

A little description of what is going on I have written here:
http://ghisler.ch/board/viewtopic.php?p=326271#326271

Could you please look into the matter?
Thanks!

Regards
Karl

EDIT on 15/03/2017:
I have updated the description since it has changed with
Windows 10 Pro Version 1607 (Build 14393.953)
Hi tuska,

QuickSearch Extended implements a caching system for WDX strings. There is currently no way to completely deactivate it. You can however change a folder and activate QuickSearch Extended and change the folder back. This should clear the cache.

User avatar
Samuel
Power Member
Power Member
Posts: 1871
Joined: 2003-08-29, 15:44 UTC
Location: Brandenburg, Germany
Contact:

Re: QuickSearch eXtended 2.2.4 together with a wdx-Plugin

Post by *Samuel » 2017-04-01, 07:02 UTC

Samuel wrote:Hi tuska,

QuickSearch Extended implements a caching system for WDX strings. There is currently no way to completely deactivate it. You can however change a folder and activate QuickSearch Extended and change the folder back. This should clear the cache.
Actually there is a setting in the GUI (size of cache) and in the INI file (wdx_cache=10000). You could experiment with 0 and -1 there.

User avatar
Samuel
Power Member
Power Member
Posts: 1871
Joined: 2003-08-29, 15:44 UTC
Location: Brandenburg, Germany
Contact:

Post by *Samuel » 2017-04-01, 07:27 UTC

DrShark wrote:2Samuel
QSX, if used at least once in one TC instance, adds its own gui panel to all TC instances, even if they (TC instances) configured not to use QuickSearch plugin (tcmatch.dll). Details in this topic. Reproduced with tcmatch.dll of QSX with versions 2.0.0.0, 2.2.1.0, and using following tcmatch.ini...
It is currently not supported to have 2 different GUIs open at the same time.
It would need some refactoring to implement it.

Technical stuff:
Currently the GUI is "#SingleInstance force". The dll opens it on start:

Code: Select all

ShellExecute(0,L"open",GuiProgram.c_str(),L"gui",0,SW_SHOWNORMAL);
So on second start of QuickSeach Extended it would not open another GUI.
The really hard thing would be the activation:

Code: Select all

if(QSvisible==0 && INI_override_search!=0 && WinActive("ahk_class TQUICKSEARCH")){
...
I cannot think of a way to detect to what tcmatch.dll the TQUICKSEARCH-Window belongs to. The best would probably to rewrite everything (filtering and GUI) in one dll. (very much work)

For now you could deactivate the additional GUI in the options.

User avatar
Samuel
Power Member
Power Member
Posts: 1871
Joined: 2003-08-29, 15:44 UTC
Location: Brandenburg, Germany
Contact:

Post by *Samuel » 2017-04-01, 07:30 UTC

Samuel wrote:For now you could deactivate the additional GUI in the options.
You could also reuse the same tcmatch.ini for both TC instances. This should be possible.

User avatar
tuska
Power Member
Power Member
Posts: 1681
Joined: 2007-05-21, 12:17 UTC

Re: QuickSearch eXtended 2.2.4 together with a wdx-Plugin

Post by *tuska » 2017-04-01, 13:08 UTC

Samuel wrote:
Samuel wrote:Hi tuska,

QuickSearch Extended implements a caching system for WDX strings. There is currently no way to completely deactivate it. You can however change a folder and activate QuickSearch Extended and change the folder back. This should clear the cache.
Actually there is a setting in the GUI (size of cache) and in the INI file (wdx_cache=10000). You could experiment with 0 and -1 there.
Hi Samuel,
thank you very much for your explanation and solution.

I have changed the value wdx_cache=1000 in file tcmatch.ini to value: wdx_cache=0 ... (the value wdx_cache=-1 is also possible).
An immediately search-result with "QuickSearch eXtended" can be achieved with this value.

Now everything is fine for me.
Thanks again!

Regards
Karl

User avatar
DrShark
Power Member
Power Member
Posts: 1353
Joined: 2006-11-03, 22:26 UTC
Location: Kyiv, 68/262

Post by *DrShark » 2017-04-01, 14:00 UTC

Samuel wrote:
Samuel wrote:For now you could deactivate the additional GUI in the options.
You could also reuse the same tcmatch.ini for both TC instances. This should be possible.
The issue is that TC instance which is configured not to load/use any tcmatch.dll loads QSX GUI if another TC instance loads QSX tcmatch and user used it at least once there. This suggestion (deactivating the QSX GUI via its options) will just disable QSX GUI for all TC instances.

However, I found a workaround: launch TC instasnce that doesn't have tcmatch loaded on another virtual desktop using Desktops tool. QSX that launched on one virtual desktop doesn't add its gui panel to TC instances launched on other virtual desktops. This workaround will work fine if additional virtual desktop will only have launched TC instances that doesn't use QSX (with its additional GUI).
Android 4.3.1 no root, kernel 08.09.2016; Vista Home Premium SP2 rus 32 bit
TC #149847 Personal licence

Cuz we're all in this together, We're here to make it right

User avatar
Horst.Epp
Power Member
Power Member
Posts: 3439
Joined: 2003-02-06, 17:36 UTC
Location: Germany

Hang on Quick Search if additional GUI is enabled

Post by *Horst.Epp » 2017-04-07, 08:40 UTC

I have updated Windows 10 to the Creators Update version.
No problems so far in any program but this one.
I have set to filter the list on keyboard entry.
IF I start typing the box for entering chars occurs
but I cant input any character and I have to stop TC with the Task manager.
After disabling the additional GUI with TCmatch.exe all works fine.
Its not a big problem for me because I normaly don't need the GUI.
Windows 10 Home x64 November 2019 Update, Version 1909 (OS Build 18363.476)
Intel(R) Core(TM) i7-4770 CPU @ 3.40GH, 16GB RAM
TC 9.50ß5 x64 / x86, Everything 1.4.1.956 (x64)

User avatar
ZoSTeR
Power Member
Power Member
Posts: 920
Joined: 2004-07-29, 11:00 UTC

Post by *ZoSTeR » 2017-04-07, 16:33 UTC

I can confirm that TC hangs with Win 10 v1703 (Creators Update).

User avatar
Samuel
Power Member
Power Member
Posts: 1871
Joined: 2003-08-29, 15:44 UTC
Location: Brandenburg, Germany
Contact:

Re: Hang on Quick Search if additional GUI is enabled

Post by *Samuel » 2017-04-08, 08:06 UTC

Horst.Epp wrote:I have updated Windows 10 to the Creators Update version.
No problems so far in any program but this one.
I have set to filter the list on keyboard entry.
IF I start typing the box for entering chars occurs
but I cant input any character and I have to stop TC with the Task manager.
After disabling the additional GUI with TCmatch.exe all works fine.
Its not a big problem for me because I normaly don't need the GUI.
Sorry currently I cannot investigate. Could someone try to find out what is happening/preventing the GUI to start? (the GUI is a standalone program written in AutoHotkey - Source see first post)

xbr088
New Member
New Member
Posts: 1
Joined: 2017-04-09, 13:35 UTC

freeze

Post by *xbr088 » 2017-04-09, 13:37 UTC

I update windows 10 to creator update and quicksearch stop working. It means, when i start typing, only black row occurs and total commander freeze. It need to be closed in task manager.

User avatar
Samuel
Power Member
Power Member
Posts: 1871
Joined: 2003-08-29, 15:44 UTC
Location: Brandenburg, Germany
Contact:

Post by *Samuel » 2017-04-10, 12:09 UTC

For anyone having trouble using the Windows 10 Creators Update and QuickSearch Extended within TC:
1) Does the current user have read / write access to the folder where tcmatch.ini is located? (usually the TC directory)
1a) Does granting the access prevent the crash?
2) Does TC/QuickSearch Extended still crash when the additional GUI is deactivated? Deactivate it in the GUI :lol: or change / add the following to your tcmatch.ini:

Code: Select all

[gui]
override_search=0
3) Does deleting the current tcmatch.ini help prevent the crash?

User avatar
Horst.Epp
Power Member
Power Member
Posts: 3439
Joined: 2003-02-06, 17:36 UTC
Location: Germany

Post by *Horst.Epp » 2017-04-10, 12:38 UTC

Samuel wrote:For anyone having trouble using the Windows 10 Creators Update and QuickSearch Extended within TC:
1) Does the current user have read / write access to the folder where tcmatch.ini is located? (usually the TC directory)
1a) Does granting the access prevent the crash?
2) Does TC/QuickSearch Extended still crash when the additional GUI is deactivated? Deactivate it in the GUI :lol: or change / add the following to your tcmatch.ini:

Code: Select all

[gui]
override_search=0
3) Does deleting the current tcmatch.ini help prevent the crash?
1. TC is installed in c:\tools\wincmd and I have full access.
2. As I have reported, deactivating the GUI helps
3. Deleting the tcmatch.ini doesn't help
Windows 10 Home x64 November 2019 Update, Version 1909 (OS Build 18363.476)
Intel(R) Core(TM) i7-4770 CPU @ 3.40GH, 16GB RAM
TC 9.50ß5 x64 / x86, Everything 1.4.1.956 (x64)

stifani
Junior Member
Junior Member
Posts: 19
Joined: 2004-05-13, 02:32 UTC

Post by *stifani » 2017-04-10, 16:38 UTC

hello

as i said here -> https://ghisler.ch/board/viewtopic.php?t=47682
the problem is when tcmatch.dll tries to lauch tcmatch.exe using the ShellExecuteW().

A workaround is to substitute the bugged ShellExecute with CreateProcess. Here is the modification i did tcmatch.cpp@line 191 :

Code: Select all

//ShellExecute(0,L"open",GuiProgram.c_str(),L"gui",0,SW_SHOWNORMAL);

GuiProgram+=L" gui";
STARTUPINFO siStartupInfo = {0};
PROCESS_INFORMATION piProcessInfo = {0};
siStartupInfo.cb = sizeof(siStartupInfo);

if ( !CreateProcess(
	NULL,
	(LPWSTR)GuiProgram.c_str(),
	NULL,	
	NULL,
	TRUE,
	0,
	NULL,
	NULL,
	&siStartupInfo,
	&piProcessInfo) )
{
  // handle some error here
}

CloseHandle( piProcessInfo.hProcess );
CloseHandle( piProcessInfo.hThread );

And now it's working again :)
Last edited by stifani on 2017-04-10, 16:46 UTC, edited 1 time in total.

Post Reply