Microsft Windows Терминал (устанавливается через Microsoft Store) создает 0-байтовый wt.exe
файл, который является Windows псевдонимом выполнения . AFAIK это что-то похожее на символическую ссылку c, за исключением того, что она, похоже, разрешена на уровне CreateProcess
Api в отличие от символической ссылки, которая транслируется в файловой системе.
В PowerShell:
❯ dir ~\AppData\Local\Microsoft\WindowsApps\wt.exe
Mode Name
---- ----
la--- wt.exe -> C:\Program Files\WindowsApps\Microsoft.WindowsTerminal_1.0.1401.0_x64__8wekyb3d8bbwe\WindowsTerminal.exe
❯ Get-Item .\wt.exe | fl
Name : wt.exe
Length : 0
LinkType : AppExeCLink
Target : C:\Program Files\WindowsApps\Microsoft.WindowsTerminal_1.0.1401.0_x64__8wekyb3d8bbwe\WindowsTerminal.exe
Мне не удалось найти подходящую документацию для этих «новых» псевдонимов. Даже поиск в Google значения PS AppExeCLink
не очень полезен.
Мне нужен быстрый способ разрешить псевдоним выполнения (получить целевой файл) в приложении C#. Учитывая мои требования, я предпочитаю неуправляемый (Win32 Api) способ добавления ссылки на медленный WMI или внешний пакет nuget 300 КБ.
Спасибо!