在用户开始菜单中创建快捷方式的正确方法 CSIDL_STARTMENU

Correct way to create shortcuts in user start menu CSIDL_STARTMENU

我正在为 Windows 10 制作非提升的软件安装程序。安装程序将应用程序保存到 C:\Users\USER_NAME\AppData\Local\MY_APP_NAME 文件夹中。它还会在 C:\Users\USER_NAME\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\ 文件夹中创建一个快捷方式。快捷方式正确显示在“开始”菜单中,但从未出现在搜索结果中。

我尝试重建搜索索引和 运行 开始菜单疑难解答,但没有成功。我来自波兰,因此 Cortana 在我的机器上被禁用。

我调查了该文件夹中的其他快捷方式,发现一些应用程序 出现在搜索结果中,而另一些则没有。例如,SourceTree 的 link 出现在搜索结果中,而 R-Link 2 Toolbox 的快捷方式不会出现在那里。 SourceTree 和 R-Link 2 Toolbox 都安装到 AppData\Local 文件夹中,并且两个快捷方式都保存到 AppData\Roaming\Microsoft\Windows\Start Menu\Programs\。我看不出它们的快捷方式文件有什么区别。然而,我可以在搜索结果中找到 SourceTree,而 R-Link 不存在。此行为与应用名称中的 space 无关。我尝试重命名我的应用程序,使其名称中没有 space,这没有任何改变。

我需要做些什么来注册我的索引快捷方式吗?

问题似乎与 Windows OS 的索引问题有关。 sfc /scannow 命令似乎解决了这个问题,现在所有菜单文件夹和应用程序的索引都可以正常工作。