Search field in Settings no longer works (Windows 11 22H2)

Clanger

Well-Known Member
i took 2 snapshots and those are what showed up. i cant upload the snapshots here cos they are too big. could mediafire em,,
 

garlin

Moderator
Staff member
you mean this?
View attachment 7662
garlin if i untick that box before sysprep/capture, would that setting be remembered during deployment or not? im guessing not.
Reg keys created by the Settings page are written to install.wim, they're enabled when the install runs. The exception is some services and apps can replace them during their first-time setup.
 

MacVap

New Member
I'm not sure if I follow y'all, but in any case, that indexing thing is a file atribute and I think it propagates from the drive itself.


I never mess with it because i remove indexing service anyway.
 

francis11

Active Member
which services u disabled ?or removed
You can disable Windows Search in Services, but it's not same removing it. Use <c>search 'Windows Search'</c> in preset for removing and it same time remove the Service. But somehow the Service of WS Search is'nt found on a loaded (22H2) 22621.105? That's odd.
 

francis11

Active Member
Didn't you contradict yourself? Removing Windows Search deletes SearchIndexer.exe, which is indexing.
Yeah- but howcome Indexing is still working on C drive on a fresh install after removal and you've to unclick that box showed in upper comment waiting 5+ minutes ie. on a Sysprep to make it work? Indexing on C drive can't be removed before install and i don't know why. But it could be great if somebody someday find out
 

aviv00

Member
You can disable Windows Search in Services, but it's not same removing it. Use <c>search 'Windows Search'</c> in preset for removing and it same time remove the Service. But somehow the Service of WS Search is'nt found on a loaded (22H2) 22621.105? That's odd.
they changed it
the search in the settings
it was ctfmon in the task scheduler
now it standalone service
 

garlin

Moderator
Staff member
it was ctfmon in the task scheduler
CTFMon (Colloborative Translation Framework) is the service which handles alternate text input (other keyboard languages).
When misconfigured, it can cause performance issues. It's constantly running all the time.
 

garlin

Moderator
Staff member
If you don't need On-Screen Keyboard or other languages, disabling CTFmon does nothing bad to normal apps. But Settings requires it to do many tasks. When you run ProcMon to trace Settings, CTFmon is watching everything you click or type!
 

garlin

Moderator
Staff member
Yeah- but howcome Indexing is still working on C drive on a fresh install after removal and you've to unclick that box showed in upper comment waiting 5+ minutes ie. on a Sysprep to make it work? Indexing on C drive can't be removed before install and i don't know why. But it could be great if somebody someday find out

Disabling the index attribute on new filesystems is tribal knowledge. Everyone does it, because it's always been "the way".
But it's not required if Search is properly disabled or removed.

Now if you're paranoid that indexing gets re-activated without your consent, then Search's Crawl Scope Rules will help.
Using the Crawl Scope Manager

A simple PowerShell example by Tome Tanasovski:
Powershell Tackles Windows Desktop Search
https://www.nuget.org/packages/tlbimp-Microsoft.Search.Interop/

Capture1.PNG

Capture2.PNG

Modified version to remove all file paths from indexing rules:
Code:
Add-Type -path "Microsoft.Search.Interop.dll"
$SM = New-Object Microsoft.Search.Interop.CSearchManagerClass
$Catalog = $SM.GetCatalog("SystemIndex")
$CrawlMan = $Catalog.GetCrawlScopeManager()

$Scopes = @()
$begin =$true
[Microsoft.Search.Interop.CSearchScopeRule]$scope = $null

$enum = $CrawlMan.EnumerateScopeRules()
while ($scope -ne $null -or $begin) {
     $enum.Next(1,[ref]$scope,[ref]$null)
     $begin = $false
     $Scopes += $scope
}

foreach ($item in ($Scopes | Where-Object { $_.PatternOrURL -match 'file:' })) {
    $Rule = $item.PatternOrURL
    $Rule
    $CrawlMan.RemoveScopeRule($Rule)
}
$CrawlMan.SaveAll()

Capture3.PNG

Maybe you can just export HKLM\SOFTWARE\Microsoft\Windows Search\CrawlScopeManager\Windows\SystemIndex?
Honestly, I don't play around with this much.
 

Hellbovine

Active Member
To help clarify something which seems to be getting confused in some of the questions, the index page within the Settings menu becomes disabled and the page says something like "Indexing is not currently running because the service has been disabled" if you just disable the "wsearch" service name, either manually or with the registry key. This is all you have to do to fully turn off indexing.

The option to uncheck from your disk drives that says "Allow indexer to ...." is checked by default and does not necessarily mean indexer is turned on or running. That checkbox is specifically a part of the NTFS file system. This is why the option doesn't exist on Fat32 or ExFat drives.

Checking or unchecking the index option on the disk drives just goes through all of your files on the drive to turn off/on the Index file property attribute. Think of the attribute the same way you would the "archive" flag, "hidden" flag, etcetera. All it means when this option is checked, is that every new file copied to the NTFS disk drive will have the "I" index flag set, telling the Indexer service (when it DOES run) to then check these files and index them. If the service is not running then it can never add these flagged files to the actual index.

I can't say for sure since I haven't used NTLite to remove these components yet, but based on reading all the other threads about "such and such broke" it sounds like removing search related components in NTLite is actually messing with Cortana search, which is getting confused with Indexing, because disabling the Index doesn't break any searching function in Windows.
 
Last edited:
Top