Installation issues

VCRUNTIME140.dll was not found

This message will sometimes occur when starting the Recoll GUI for the first time after installation. I need to fix the installation, but, meanwhile, please go to this Microsoft support page and install both the X86 and X64 versions of vc_redist.

Changing the interface language

Recoll will try to use the language from the Windows installation. Unfortunately, many Recoll message translations are incomplete or bad. The English one is the default and complete of course. The French one is correct, and usually complete or almost complete.

You can use the -L command line option to change the default language for the interface, e.g. for English:

recoll -L en

The easiest way to do this is to edit the command in the shortcut properties if you have one on your desktop. Change the "target" property in the Windows shortcut tab to something like:

"C:\Program Files (x86)\Recoll\recoll.exe" -L en

Windows preventing Recoll from making system calls

It seems that it sometimes happen that Windows detects Recoll, and specially the webengine component used for displaying the results as a security risk, and prevent it from making system calls. This will manifest itself with things not working and the following kind of messages in the Windows log:

Warning Microsoft-Windows-Security-Mitigations/KernelMode
Microsoft-Windows-Security-Mitigations Process '\Device\HarddiskVolume6\Program Files (x86)\Recoll\QtWebEngineProcess.exe' (PID xxxx) was blocked from making system calls to Win32k.sys

Nick, a kind Recoll user found a solution:

Within Windows Settings, search for 'exploit protection'. Add an entry that points to recoll.exe. Find the section entitled, 'Disable Win32k system calls' and, within that, click 'Override system setting'. Then set the slider that is entitled, er, 'Off' to . . er, 'Off'. That’s it. I do not think that one needs to reboot.

Using bigger fonts on High DPI displays

You can use the Preferences→GUI configuration→User Interface→Display scale control (near the bottom of the tab) to scale up the interface.

Opening PDF documents at the correct page

By installation default, the Recoll GUI will open PDF documents with the Windows Shell default application. However, this opens the document at the default location (usually the first page), and will not allow supplying additional parameters like a page number (where the search term is first found), or a search string.

This can be changed from the GUI Preferences menu.

Go to Preferences→GUI Configuration→Choose editor applications

Select application/pdf

You should see that the application listed is "Desktop Default"

You can change this by checking Exception to Desktop preferences in the lower frame, and then:

  • Enter an explicit command line to use

  • Click Apply to current selection

  • Click Close

  • Click OK in the main preferences dialog.

Here follows the command lines for the three applications I tried. The paths may need to be adjusted depending on where the app is actually installed on your system. Do use forward slashes, and double quote the path if needed (because of the white space in "Program Files").

Evince

Evince is a Gnome desktop application, and a Windows port is available. It is the only PDF viewer which I have found able to take a search string parameter in addition to the target page number.

Evince is installed in the User directory by default, and the exact path will need adjustment for the user name and the version number:

C:/Users/bill/AppData/Local/Apps/Evince-2.32.0.145/bin/evince --page-index=%p --find=%s %f
Foxit
"C:/Program Files (x86)/Foxit Software/Foxit Reader/FoxitReader.exe" %f /A page=%p
SumatraPDF
"C:/Program Files/SumatraPDF/SumatraPDF.exe" -page %p %f

Using an alternate configuration directory

This tip is useful if you want to manage several configurations, or if you really have some reason to not let the configuration directory stay in its default location ($HOMEDIR/AppData/Local/Recoll). If your concern is only about storage space, and you do not actually want to manage multiple configuration directories, you can more simply change the index storage location from the GUI Index Configuration panel, Database directory name section.

If you really need separate configurations, the easiest approach is to create a shortcut on the desktop and have it start the GUI with a '-c' option. For example, set the shortcut’s 'Target' to something like:

"C:\Program Files (x86)\Recoll\recoll.exe" -c c:/path/to/my/configdir

Do use forward slashes for the configuration directory path. This will hopefully be fixed some day.

You will need to create the configuration directory, Recoll will not do it by itself. You can just leave it empty, Recoll will then propose to start the configuration editor.

You can find a more complete and general explanation about using shortcuts, for example on this page.

Python missing dll issue

It may happen that you get something similar to the following screenshot while indexing. This is a known issue with the Microsoft toolchain used to generate the official Python executable bundled with the Recoll installation. It should only occur on older Windows versions (not on Windows 10). Sorry about the French messages, the important part is the dll name.

recoll python dll

If you get this, it is essential to fix the problem, else the contents of most types of documents (e.g. PDF, MS-Word) will not be indexed..

Please follow the instructions on this page on the Microsoft support site.

Installing the Python extension and running the WEBUI

You can use the Python extension to query the index. The API manual is here:

Among other uses, installing the extension allows using the Recoll WEBUI on Windows, see the detailed installation instructions.

The Python module is distributed for several Python versions and located inside the installed package, under the following directory:

C:\Program Files (x86)\Recoll\Share\dist\

For example, depending on current Recoll and Python versions, you could have:

Recoll-1.31.0-cp37-cp37m-win32.whl
Recoll-1.31.0-cp38-cp38-win32.whl
Recoll-1.31.0-cp39-cp39-win32.whl

It would be possible to use the bundled Recoll copy of Python to run the extension, but, because the Recoll bundled copy is incomplete, lacking pip, among other things. it’s probably more convenient to have a separate full copy of Python 32 bits

You can install the extension, for example for Python 3.7, with something like:

"C:\Program Files (x86)\Python37-32\Python.exe" -m pip install "C:\Program Files (x86)\Recoll\Share\dist\Recoll-1.31.0-cp37-cp37m-win32.whl"

You should then be able to import it from the standard Python command.

Known problems and limitations

  • When filtering the search with a dir: clause, an absolute path should be specified as /c/mydir instead of c:/mydir. This will be the case if you browse for the directory, but it will not be corrected if you enter it by typing.

  • Indexing is quite slow compared to the Linux version, especially when using external commands (e.g. for PDF files). I don’t know if this is a case of my doing something stupid, or if the general architecture is really bad fitted for Windows. If someone with good Windows programming knowledge reads this, I’d be very interested by a discussion. The Linux and Windows index formats are compatible, so, if you have shared Linux/Windows data, it’s best to process it on Linux.