- За что отвечает процесс SearchProtocolHost.exe и как снизить его нагрузку на систему
- SearchProtocolHost.exe — что это за процесс?
- Процесс грузит систему
- Исправляем ситуацию
- Using the search Protocol
- Syntax
- Windows Vista with SP1 use of the search: protocol
- Examples
- Registering the Application that Handles the Protocol
- Registry Entries
- What is SearchProtocolHost.exe? Is SearchProtocolHost.exe spyware or a virus?
- Users Opinions
- Fix High CPU usage due to SearchProtocolHost.exe in Windows 10
- High CPU usage due to SearchProtocolHost.exe
- Solution 1] Change Indexing options
- Solution 2] Run an SFC scan
- Solution 3] Disable Windows search
За что отвечает процесс SearchProtocolHost.exe и как снизить его нагрузку на систему
Каждый пользователь операционной системы Windows хоть раз, но осуществлял поиск по файловой системе. Но мало кто знает, какая именно служба за это отвечает и как она работает. В этой статье мы поговорим как раз таки об этом, так что по окончанию прочтения вы узнаете немного больше о вашей системе.
SearchProtocolHost.exe — что это за процесс?
Изначально давайте обозначим, что за осуществление поиска отвечает не один процесс в системе, а два — это SearchProtocolHost и SearchFilterHost. Их вы можете увидеть в «Диспетчере задач», открыв вкладку «Процессы». Что касается второго, то с ним все просто — он фильтрует все найденные файлы по вашему запросу, оставляя только более точные. А вот с SearchProtocolHost.exe все немного сложнее.
Процесс этот запускается сразу после старта системы. Работает он в фоне, постоянно собирая информацию о каждом файле в системе и занося ее в свою базу данных, другими словами, индексирует файлы. Таким образом, проводя поиск по системе, служба обращается к базе данных, тем самым сокращает время, затрачиваемое на поиск.
Процесс грузит систему
Если вы были в «Диспетчере задач», то могли заметить, что процесс SearchProtocolHost.exe функционирует нестабильно. В какой-то момент он может потреблять настолько мизерное количество ресурсов компьютера, что его работа практически незаметна, а иногда, наоборот, он сильно грузит компьютер, из-за чего появляются зависания. Особенно это ощутимо на слабых компьютерах.
Исправляем ситуацию
Появляется вопрос, что делать в таких ситуациях? Здесь вам стоит решить, готовы ли пожертвовать возможностью быстрого поиска файлов по системе в обмен на увеличение производительности компьютера. Если да, то достаточно всего лишь отключить соответствующую службу. Делается это следующим образом:
- В «Диспетчере задач» перейдите на вкладку «Службы».
- В нижней части окна нажмите по одноименной кнопке.
- В новом окне «Службы» отыщите в списке Windows Search.
- Нажмите по этой службе дважды ЛКМ.
- В свойствах измените тип запуска на «Отключена».
- Нажмите «Применить», а затем «ОК».
Теперь после перезагрузки компьютера процесс не будет запускаться, соответственно, затраты мощности компьютера снизятся, а производительность возрастет.
Using the search Protocol
The search: application protocol is an extensible convention for calling the desktop search application on WindowsВ Vista with Service PackВ 1 (SP1) and later versions. The protocol was created in WindowsВ Vista with SP1 (for information see the Knowledge Base article Overview of Windows Vista desktop search Changes in Windows Vista Service Pack 1) to give Windows a way to determine and call the default desktop search application.
The protocol syntax provides a number of parameters useful for performing common desktop searches, such as user-entered search terms or the location on which the search was begun. When users search from one of the two available search entry points (either the Start menu or Windows Explorer), the operating system uses the search protocol to launch the default desktop search application. It does this by adding the user-entered search terms to the standard search protocol syntax and passing that information to the application registered as the default search application.
If no other desktop search applications are installed, a search entered into these entry points launches the Windows Search Explorer. However, third-party developers can create, install, and register their applications to handle the search protocol and to be the default search application. Such applications need to support the search protocol syntax and register with the Default Programs feature to ensure a seamless experience with Windows.
If you develop an application that is intended to use or build upon a specific desktop search application, you should not depend exclusively on the search: protocol. Because many applications could own the search: protocol, there is no guarantee that your targeted desktop search application will own it at any given time. Instead, you should use a private search protocol defined by that targeted desktop search application. This means that desktop search applications intended to be a platform for third-party applications should support both the search: protocol and their own proprietary search protocol.
NoteВ В The search: protocol does not replace the proprietary search-ms: protocol. Applications can still use the search-ms: protocol to launch Window Search Explorer or to silently query the Windows Search indexer.
This topic covers the following:
- Syntax
- Windows Vista with SP1 use of the search: protocol
- Examples
- Registering the Application that Handles the Protocol
- Registry Entries
- Related topics
Syntax
The search protocol uses the following standard URL-encoded syntax:
The syntax begins by identifying the protocol itself (search:). The parameter/value pairs are arguments passed to the Search engine, as described in the following table, which shows all of the possible parameters for the search protocol syntax.
Parameter | Value | Description |
---|---|---|
query | URL-encoded text | The query text entered by the user. |
inputlocale | Any valid language code identifier (LCID) | The LCID that identifies the input language for the query. |
keywordlocale | Any valid LCID | The LCID that identifies the language of the international version of the Indexer. The default is 1033 (en-us). |
crumb | AQS statement | This argument restricts the scope being searched. In WindowsВ Vista, the search protocol supports full AQS as well as a special implementation for a location argument. In WindowsВ XP, the search protocol also supports full AQS, except for a special implementation of kind and store . |
syntax | NQS, AQS (not case sensitive) | The query syntax to use to search the index: either Natural Query Syntax or Advanced Query Syntax (AQS). AQS is the default and is always assumed parsed and supported. |
stackedby | Any valid property from the property system | A property that specifies the column to stack results by. |
subquery | A fully specified path for a Saved Search file (*.search-ms) | The results of the subquery are used as the source for the query. That is, the query terms are searched for against the results of the subquery. |
displayname | URL-encoded string | The name of the current search. |
Windows Vista with SP1 use of the search: protocol
WindowsВ Vista with SP1 has several entry points from which it calls the search: protocol. These entry points are outlined below as well as the common syntax associated with each.
Search protocol entry point | Location | Query called |
---|---|---|
Search Everywhere | Start menu | search:query= |
Search Everywhere | Windows Explorer | search:query= &crumb=location: |
Windows logo key+F | Anywhere | search: |
CTRL+F | Windows Explorer | search:query= &crumb=location: |
F3 | Start menu | search: |
F3 | Windows Explorer | search:query= &crumb=location: |
The WindowsВ Vista with SP1 search protocol entry points do not take advantage of all the possible parameters in the search protocol. Applications that are only concerned with handling search protocol calls from WindowsВ Vista with SP1 can use the following table as a guide to the minimum they need to implement.
Parameter | Used by Windows? | How Windows Vista with SP1 uses it when calling search: |
---|---|---|
query | Yes | The query text entered by the user. |
crumb | Yes | crumb uses the location argument to specify where the query came from. |
subquery | Yes | The results of the Subquery argument are used as the scope of items to search. This would typically be used if a user was using a .search-ms file to search and then called the default desktop search application from within that search. |
inputlocale | No | Not currently used. |
keywordlocale | No | Not currently used. |
syntax | No | Not currently used. |
stackedby | No | Not currently used. |
displayname | No | Not currently used. |
Examples
If a user enters «Microsoft» in the Start menu and clicks Search Everywhere, the resulting search protocol call is made:
If a user enters «Seattle» in Windows Explorer within C:\MyFolder and then clicks Search Everywhere, the following call is made, using escape characters for ‘:’ and ‘\’:
Registering the Application that Handles the Protocol
Because multiple applications can contend for the search protocol, you should register your application with the Default Programs feature during installation to enable the user to configure the default more easily. In addition to the installation procedures normally practiced under WindowsВ XP, a WindowsВ Vista-based application must register with the Default Programs feature so that the application and users can seamlessly configure defaults.
After installing the necessary binary files on the user’s computer, your installation routine should complete these general tasks:
- Write ProgIDs to HKEY_LOCAL_MACHINE, as described below. Note that applications must create application-specific ProgIDs for the search protocol.
- Claim machine-level search protocol association.
- Register the application with Default Programs, as explained in Registering an Application for Use with Default Programs, as a contender for the search protocol.
Registry Entries
The following are examples of the required registry entries for a fictional desktop search application, Contoso Search.
What is SearchProtocolHost.exe? Is SearchProtocolHost.exe spyware or a virus?
How to fix SearchProtocolHost.exe related problems?
1. Run Security Task Manager to check your SearchProtocolHost process
2. Run Windows Repair Tool to repair SearchProtocolHost.exe related Windows Errors
3. Run MalwareBytes to remove persistent malware
File: SearchProtocolHost.exe
SearchProtocolHost.exe is part of the Windows Indexing Service, an application that indexes files on the local drive making them easier to search. This is a crucial part of the Windows operating system and should not be disabled or removed. If you want a detailed security rating about your SearchProtocolHost.exe (and all other running background processes) read the following user opinions, and download the free trial version of Security Task Manager.
Note: Any malware can be named anything — so you should check where the files of the running processes are located on your disk. If a «non-Microsoft» .exe file is located in the C:\Windows or C:\Windows\System32 folder, then there is a high risk for a virus, spyware, trojan or worm infection! Check it out!
Users Opinions
Average user rating of SearchProtocolHost.exe: based on 59 votes. Read also the 42 reviews.
1754 users ask for this file. 17 users rated it as not dangerous. 6 users rated it as not so dangerous. 6 users rated it as neutral. 10 users rated it as little bit dangerous. 20 users rated it as dangerous. 8 users didn’t rate it («don’t know»).
Fix High CPU usage due to SearchProtocolHost.exe in Windows 10
September 14, 2020 By karan
High CPU usage slows down the system. Mostly, the reason behind high CPU usage is a process which occupies a lot of system resources. One such case is when the process SearchProtocolHost.exe ( microsoft windows search indexer ) is causing high CPU usage.
High CPU usage due to SearchProtocolHost.exe
The SearchProtocolHost.exe is the process name for the Windows Search Indexer. It helps keep a record of all files on the system to make the search process better.
The cause behind the SearchProtocolHost.exe process causing high CPU usage is when the Indexer is unable to find certain files on the system. Thus, it pushes the process hard because of which it utilizes a lot of system resources.
1] Update Windows: When we update Windows, it would update the lists in the Indexer from the network, just in case any newly launched program was missed. Here’s the procedure to update Windows.
2] Uninstall any recently installed suspicious software.
3] Run the Search and Indexing Troubleshooter. Settings >> Updates and Security >> Troubleshoot and select the Search and Indexing Troubleshooter.
Thereafter, proceed with the following solutions:
Solution 1] Change Indexing options
1] Search for Indexing options in the Windows search bar and open the option.
2] Click on Modify. It will show the list of Indexed locations.
3] Select Show all locations. It would need Administrator permissions.
4] Uncheck the larger locations (eg. C: if it is your system drive, etc.).
5] Click on OK to save the settings.
6] Restart your system.
Check if it helps ease the Disk utilization.
Solution 2] Run an SFC scan
An SFC scan helps identify missing files and replaces them if necessary. Here’s the procedure for an SFC scan.
Solution 3] Disable Windows search
While we all know how important Windows search is, but if we are unable to use the system because of the process, we would have to disable Windows search and use alternate options to find locations.
1] Press Win + R to open the Run window and type the command services.msc. Press Enter to open the Service Manager window.
2] Locate the Windows Search process. Right-click on it and select Properties.
3] Set the Startup type as disable and click on Stop to stop the process.
4] Click on Apply and them on OK to save the settings.
5] Restart the system and check if it helps resolve the issue.