Я создал ярлык для процесса пользовательского интерфейса на рабочем столе пользователя, используя IShellLink/IPersistFile (после согласия пользователя.) Ярлык — это не что иное, как путь с параметрами командной строки:
«C: \ Program Files (x86) \ Company \ Product \ process.exe» -spo = «T + v»
Поэтому я тестирую этот ярлык на нескольких виртуальных машинах, дважды щелкнув по нему (в ОС Windows 7) и на одном компьютере (где ОС была установлена довольно давно), когда я дважды щелкаю по ярлыку, он занимает около 15 секунд для моего процесса, чтобы начать. (Я могу сказать это, поместив метод регистрации в начале моего процесса.) В то время как в других (более новых) копиях ОС ярлык запускает мой процесс практически сразу.
Мне интересно, почему это происходит?
Кэширует ли Windows те ярлыки, которые могут вызвать эту задержку?
Задача ещё не решена.