Я разработал специальное расширение оболочки для машины x64, и оно работает хорошо. Когда я установил пакет на машину с ARM, он этого не сделал, и меню не появилось. Я обнаружил, что dllhost.exe — это Arm64, и я думаю, что это причина того, что dll расширения оболочки не работает. И я провожу следующий тест: ( решение включает в себя проект упаковки приложений Windows, wpf, dll расширения оболочки)
- сборка wap/wpf/dll в любом процессоре. Невозможно работать на руке.
- создайте dll в руке, wpf/dll в x64. Невозможно работать на руке.
- создать dll в руке и wap/dll в любом процессоре. работа на руке
Таким образом, кажется, что dll расширения оболочки должна быть построена на основе руки. Но когда я проверяю некоторые приложения, которые могут отображать пользовательские расширения оболочки, я обнаруживаю Clipchamp хорошо работает на руке, хотя он встроен в любой процессор. Я сравниваю весь соответствующий реестр между моим пакетом AnyCPU и Clipchamp. Разницы нет. Я не уверен, в чем дело. Моя цель состоит в том, что я хочу создать только один пакет (лучше на базе x64), который может работать как на Arm, так и на x64.
Подробнее здесь:
https://stackoverflow.com/questions/792 ... rm-machine