Microsoft KB Archive/928782

From BetaArchive Wiki

Article ID: 928782

Article Last Modified on 5/30/2007



APPLIES TO

  • Windows Desktop Search



Important This article contains information about how to modify the registry. Make sure that you back up the registry before you modify it. Make sure that you know how to restore the registry if a problem occurs. For more information about how to back up, restore, and modify the registry, click the following article number to view the article in the Microsoft Knowledge Base:

256986 Description of the Microsoft Windows registry


INTRODUCTION

This article answers frequently asked questions about Windows Desktop Search (WDS) 3.0.

MORE INFORMATION

Warning Serious problems might occur if you modify the registry incorrectly by using Registry Editor or by using another method. These problems might require that you reinstall the operating system. Microsoft cannot guarantee that these problems can be solved. Modify the registry at your own risk.

Q1: How can I reset Windows Desktop Search 3.0 in Microsoft Windows XP or in Microsoft Windows Server 2003?

Warning When you reset Windows Desktop Search 3.0, the index is rebuilt. Rebuilding the index uses computer resources, and it takes time. Reset Windows Desktop Search 3.0 only if you see event ID 9000, event ID 3028, or event ID 3029 in Event Viewer.

A1: To reset Windows Desktop Search 3.0 in Windows XP or in Windows Server 2003, follow these steps:

  1. Close all programs. Make sure that you exit Microsoft Outlook.
  2. Stop the Indexing service. To do this, follow these steps:
    1. Click Start, click Run, type cmd, and then click OK.
    2. At the command prompt, type net stop wsearch, and then press ENTER.
    3. Type exit, and then press ENTER.
  3. Make sure that the SearchIndexer.exe program is stopped. To do this, follow these steps:
    1. Press CTRL+ALT+DELETE.
    2. In the Windows Security screen, click Task Manager.
    3. Click the Processes tab, and then click to select the Show processes from all users check box.
    4. Make sure that the SearchIndexer.exe program is not present in the list of processes.
    5. On the File menu, click Exit Task Manager.
  4. Delete the %systemdrive%\Documents and Settings\All Users\Application Data\Microsoft\Search\Data\Applications\Windows folder. Click Yes if you are prompted to confirm this step.

    Note %systemdrive% represents the system drive. Typically, C is the system drive. The Application Data folder is hidden. To see hidden folders, follow these steps:
    1. Click Start, click Run, type explorer, and then click OK.
    2. On the Tools menu, click Folder Options.
    3. Click the View tab, and then click Show hidden files and folders in the Advanced settings list.
    4. Click Apply, and then click OK.
  5. Click Start, click Run, type regedit, and then click OK.
  6. Locate and then delete the following registry subkeys:
    • HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows Search\Applications\Windows
    • HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows Search\CatalogNames\Windows
    • HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows Search\Databases\Windows
    • HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows Search\Gather\Windows
    • HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows Search\Gathering Manager\Applications\Windows
    • HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows Search\UsnNotifier\Windows
  7. Locate and then click the following registry subkey:

    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows Search

  8. In the details pane, double-click SetupCompletedSuccessfully, type 0 in the Value data box, and then click OK.
  9. Start the Indexing service. To do this, follow these steps:
    1. Click Start, click Run, type cmd, and then click OK.
    2. At the command prompt, type net start wsearch, and then press ENTER.
    3. Type exit, and then press ENTER.
  10. Make sure that the SetupCompletedSuccessfully registry entry value changes to 1 in five minutes.

    Note If the SetupCompletedSuccessfully registry entry value is still 0 (zero) after five minutes, Setup is not successful.

After you complete steps 1 through 10, indexing starts. Soon after indexing starts, you may search for documents and for e-mail messages.

Q2: What locations, such as remote shares and removable drives, and what file types (extensions) are indexed by Windows Desktop Search 3.0?

A2:

Default locations

The system drive is indexed except for the following folders:

  • \Build
  • \Installed Repository
  • \ProgramData
  • \Program Files
  • \Program Files (x86)
  • \Users\Default
  • \Windows
  • \Windows.000
  • \Windows.old
  • \$Recycle Bin

Note The shared Start menu folder is indexed.

Other locations

Mail

When you install Microsoft Office Outlook 2007 and earlier versions of Outlook on a client computer that is running Windows Vista, you do not have to install Windows Desktop Search 3.0. The Windows Search service is a component of Windows Vista. Outlook Express e-mail messages (.eml files) are indexed as part of the file system.

Make available offline

Right-click a network share folder, and then click Make Available Offline.

Remote shares

To index remote network shares, an add-in for Windows Desktop Search 3.0 is required. This add-in is not required for computers that are running Windows Vista. To download this add-in, visit the following Microsoft Web site:

Removable drives

Windows Desktop Search 3.0 will index removable drives if you add a start address. However, Windows Desktop Search 3.0 does not delete the files from the index when you remove the drive.

Mounted drives

Windows Desktop Search 3.0 does not index mounted drives.

Default file types (file name extensions)

Windows Desktop Search 3.0 indexes the file names and the core file system properties of all file types. The core file system properties include the following:

  • File size
  • Date created
  • Date modified
  • Version

Windows Desktop Search 3.0 also indexes the content and the unique properties of the following file types:

  • Text files
  • Office files
  • Common media files

By default, Windows Desktop Search 3.0 does not index the content of the following file types:

  • .cab
  • .zip
  • .chm
  • .pdf

You must install an IFilter for each of these file types.

Note The current version of the Adobe .pdf filter causes the Windows Desktop Search index to stop responding.

The .pdf filter will cause the index to stop responding for about five minutes for each .pdf file. Therefore, indexing may take longer than expected, depending on the number of .pdf files that you have. The best way to work around this issue is to remove .pdf as an indexed file name extension in "Indexing Options" in Control Panel.

Adobe is working to change their .pdf filter to work with the new Windows Desktop Search 3.0 architecture.

Supported file types

When the correct IFilter is installed, Windows Desktop Search 3.0 will index the content and the proprietary properties of any file type.

Advanced filter information

Null filter

Null filter {098f2470-bae0-11cd-b579-08002b30bfeb} is actually a registered iFilter. The Null filter is registered for extensions, such as .gif and .bmp.

File Properties filter

The File Properties filter is really the absence of a filter. In this case, the file system provides the properties directly.

Plain Text filter

The Plain Text filter {5e941d80-bf96-11cd-b579-08002b30bfeb} is the TXT iFilter. The Plain Text filter indexes files as text files. Therefore, the Plain Text filter is registered for extensions such as .txt, .sql, .reg, and .log.

Other filters include the HTML filter, the XML filter, the Office filter, and the MIME filter.

Windows Desktop Search 3.0 depends on applications to register their own filters. The Index Properties Only user interface (UI) lets you switch indexing behavior between the following options:

  • Null filter (if registered)
  • File Properties filter

The "Index Properties and File Contents" UI lets you switch indexing behavior between the following options:

  • Native persistent handler (if registered by some installer)
  • Plain Text filter

You can add a new extension, and then you can switch between the File Properties filter and the Plain Text filter. However, you cannot unregister the Office filter to prevent it from indexing .ppt files. You can only switch between the File Properties filter and the Office filter.

Q3: Why is a file excluded from the index or not returned in a query?

A3: The following are reasons why a file may be excluded from the index or may not be returned in a query:

  • The file is not in the default indexing scope. For example, any drives that are not a part of the system drive are not included in the default indexing scope. The files on such drives are not indexed unless you modify the files by using "Indexing and Search Options" in Control Panel.
  • The file is not in the specified query scope.
  • The file is not indexed because of filtering difficulties. To determine whether there is any failure in indexing the file, you must verify that the operating system gatherer log has a failure status for the file. The Windows Search service writes to the gatherer log.
  • The file is not indexed because the indexer does not receive the I/O time from the operating system. Therefore, the indexer is still working on the file, or the indexer is in a paused state. The Windows search engine runs in low-priority I/O mode. If there are many files that are waiting to be indexed and if Windows Vista is running other disk-intensive tasks, indexing may take lots of time. As a last resort, set the UseLowPriorityConfiguration registry entry to 0 (zero). When you do this, the index runs regardless of the user state.

    How to set the UseLowPriorityConfiguration registry entry to 0

    Warning Serious problems might occur if you modify the registry incorrectly by using Registry Editor or by using another method. These problems might require that you reinstall the operating system. Microsoft cannot guarantee that these problems can be solved. Modify the registry at your own risk.

    1. Click Start, click Run, type regedit, and then click OK.
    2. Locate and then double-click the following registry subkey:

      HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows Search\UseLowPriorityConfiguration

    3. In the Value data box, type 0, and then click OK.
    4. Exit Registry Editor.
    5. Click Start, click Run, type cmd, and then click OK.
    6. At the command prompt, type the following commands. Press ENTER after each command.

      net stop wsearch
      net start wsearch

    7. Type exit, and then press ENTER.
  • Files are not indexed because the Index this file for faster searching attribute is not enabled. To enable the attribute, follow these steps:
    1. Right-click the file, and then click Properties.
    2. Click the General tab, and then click Advanced.
    3. Click to select the Index this file for faster searching check box, and then click OK.
  • The files are not indexed because the files are located in an excluded file path. For example, the files are not indexed because the files are located in one of the following file paths:

    C:\WINDOWS
    C:\Program Files

  • The files are not indexed because the files are in the list of excluded extensions. For more information, see the answer to question 2 (Q2).
  • The files are not indexed because the files are marked as system and as hidden.
  • The files are not indexed because the files are marked as hidden and because the folder option is set to Do not show hidden files and folders.

Q4: Why do search queries miss expected e-mail messages or return unexpected e-mail messages?

A4: When Outlook 2000, Outlook 2002, or Outlook 2003 is installed on a Windows Vista-based computer, a "mapi://" start address is added in Windows Vista. If a start address begins with "mapi://," the Outlook plug-in installation is successful.

You may see that new e-mail messages are indexed but that old e-mail messages do not appear. If e-mail messages are archived, make sure that you index archived e-mail messages in "Indexing and Search Options" in Control Panel. To do this, start Outlook, point to Instant Search on the Tools menu, and then click Search Options. Make sure that any .pst files that belong to archived e-mail messages are enabled for indexing.

Q5: Why do search programs take longer than expected to detect changes? How long is too long?

A5: If you have made from 1 to 300 simultaneous file changes on an otherwise idle computer, twenty seconds should be the maximum time period for these changes to be reflected in query results. (300 file changes are equal to approximately 500 kilobytes.) As more changes are piled together, the time to see updated results increases. For example, if you delete a source depot enlistment or move 10 thousand .mp3 files, it may take five to fifteen minutes for all the changes to appear, depending on what else the computer is doing. The indexing process has a low-priority I/O rate. Therefore, disk intensive processes always slow down the indexing process.

When a file content or an attribute change is written to disk, the Windows Search service tries to reindex the file.

Q6: Why do search processes use many computer resources, such as CPU resources, memory resources, and disk resources?

A6: If you notice that search processes use many computer resources, use the Filemon utility to determine which applications write files to disk. To download the Filemon utility, visit the following Microsoft Web site:

Windows Desktop Search citizenship design

Partners and customers want instant, up-to-date search results. To provide this feature for the file system, the SearchIndexer.exe process hooks into the NTFS USN journal. The NTFS USN journal records an immediate entry for every change that is written to the file system. The SearchIndexer.exe process monitors the journal and responds to the latest entry by spawning the following two temporary processes:

  • SearchProtocolHost.exe
  • SearchFilterHost.exe

The SearchProtocolHost.exe process reads the bytes from the changed file and then transmits the bytes to the SearchFilterHost.exe process. The SearchFilterHost.exe process loads a filter, such as the Office filter, to filter the binary data into chunks of text. The SearchIndexer.exe process can then index and write these chunks of text to the catalog on the disk. The effect of this design is an application that makes excessive changes to directories or to files on a part of the file system that is marked for indexing. This behavior may cause high CPU consumption. We use the following three layers of mitigations to prevent this behavior from causing a poor user experience:

  • Mitigation 1: Low priority CPU
  • Mitigation 2: Backoff
  • Mitigation 3: Low priority I/O

Mitigation 1: Low-priority CPU

The SearchFilterHost.exe process and the SearchProtocolHost.exe process run as low-priority processes. The indexer’s indexing speed is affected by the rate at which the low-priority processes obtain chunks of text. The low-priority processes partly control how quickly the SearchIndexer.exe process indexes. Most processes in Windows Vista do their work before the search engine runs. Therefore, you do not see applications slow down because of a lack of CPU attention.

Mitigation 2: Backoff

Search uses a backoff system in which the Windows Search service stops working if certain resource usage conditions are true. The following table lists these conditions.

Note All conditions can be configured under the HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows Search\Gathering Manager registry subkey.

Condition category Search backs off if the following conditions are true Registry key
High CPU usage (Windows XP or Windows Server 2003 only) Non-search processes consume more than 80 percent of CPU processing. This percentage is calculated by adding up the CPU consumption of the following processes: SearchIndexer.exe, SearchProtocolHost.exe, SearchFilterHost.exe, and the System Idle service. If these processes use more than 20 percent of CPU resources, the Windows Search service backs off. BackOffCPUDemandThreshold
High system I/O rate The total I/O rate is more than 200 kilobytes (KB) per second. The I/O rate includes file reads and file writes, page file I/O, file cache I/O, and mapped files I/O. BackOffIOThresholdKBs
Low memory Available page file space as defined by the GlobalMemoryStatus Win32 function becomes less than 5 megabytes (MB). BackOffLowMemoryThresholdKB
Low battery power Less than 80 percent of battery power remains. BackOffLowBatteryThreshold
Low disk space Free space on the disk on which the %ProgramData%\Microsoft\WSearch\Data folder is located is less than 20 MB. BackOffLowDiskThresholdMB
User activity (Windows XP or Windows Server 2003 only) A user moves the mouse, or a user uses the keyboard. The Windows Search service switches to backoff mode for 50 seconds when user activity occurs. BackOffDelay

Mitigation 3: Low-priority I/O

There are two search processes that perform I/O operations. The SearchProtocolHost.exe process performs read I/O operations. The SearchIndexer.exe process performs write I/O operations. All SearchProtocolHost.exe process threads run by using a low-priority I/O rate. In the SearchIndexer.exe process, most, but not all, threads run by using a low-priority I/O rate.

We hope that these mitigations make the search engine a good citizen. A potential positive side effect of search monitor file activity may be that software developers see that they generate lots of unnecessary I/O overhead. If this activity cannot be avoided, you can use calls that are documented in the Search Software Development Kit to prevent the search engine from indexing files at specified paths. You can also mark a folder or a file by using the NotContentIndexed attribute. If you do this, the folder or the file is removed from the index. Future changes are ignored.

Q7: How can I determine whether the indexer is idle or indexing?

A7: To determine the status of the indexer on a Windows Vista-based computer, use one of the following methods:

  • Click Start [GRAPHIC: the Start button], click Control Panel, click Classic View, and then double-click Indexing Options.
  • Right-click the search icon in the notification area of the Windows taskbar, and then click Indexing Status.

Q8: Why do I receive an “Access is Denied” error? Why does the Microsoft Windows Installer roll back when I try to install Windows Desktop Search 3.0?

A8: For more information about how to work around this issue, click the following article number to view the article in the Microsoft Knowledge Base:

919163 Error message when you try to install Windows Desktop Search 3.0 Beta Engine Preview: "Access is denied"


Q9: Is the Windows search engine different from the Indexing service?

A9: Since 1998, Microsoft has included the Indexing service (also known as the Content Indexing service) in Windows. The Indexing service is included in Windows Vista and in Microsoft Windows Server Code Name "Longhorn." By default, the Indexing service is disabled when it is installed by using the Add/Remove Windows Components tool. If you install and turn on the Indexing service, it runs under the Cisvc.exe process. The indexing daemons run as the Cidaemon.exe process.

In Windows Server "Longhorn," a next-generation indexing engine has been added. This indexing engine is the Windows Search service (wsearch). By default, the indexing engine is enabled. The indexing engine will index drives and e-mail messages together with other content. The indexing engine is included in Windows Vista, in Windows Server "Longhorn," in Outlook 2007, and in Microsoft Office OneNote 2007. The indexing engine will be included in the next release of Windows Desktop Search 3.0. The processes are SearchIndexer.exe, SearchProtocolHost.exe, and SearchFilterHost.exe.

Microsoft Windows Sharepoint Services (WSS) 3.0 in Windows Server "Longhorn" also includes the Windows Search service.

Q10: How can I obtain direct assistance for Windows Desktop Search 3.0?

A10: Send an e-mail message to Windows Desktop Search Feedback and Discussion.

The third-party products that this article discusses are manufactured by companies that are independent of Microsoft. Microsoft makes no warranty, implied or otherwise, about the performance or reliability of these products.

Keywords: kbexpertisebeginner kbhowto KB928782