для автоматического обновления моего приложения WPF, у меня есть такая стратегия:
- (1) process.exe запускается
- process.exe ищет обновление => есть обновление
- process.exe делает копию самого себя => process_copy.exe
- process.exe запуск process_copy.exe с параметрами "update"
- process.exe завершает работу
- (2) Запускается process_copy.exe
- process_copy.exe, см. Параметры "update", загрузите обновление для process.exe
- process_copy.exe запустите process.exe
- process_copy.exe выходит
- process.exe запускается
Обратите внимание, что мое приложение использует DLL.
эта стратегия работает, за исключением некоторых случаев (не каждый раз), когда приложение запускается при запуске в HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ Run
Иногда происходит сбой в (2) с
System.IO.FileNotFoundException не обработан
Сообщение = "Не удалось загрузить файл или сборку". ManagedWinapi, версия = 0.3.0.0, культура = нейтральная, PublicKeyToken = null 'или одна из ее зависимостей.
Я не понимаю, почему это может привести к сбою.
Если он может начинаться с (1), почему он (иногда) не может начинаться с (2)?
У кого-нибудь есть объяснение?
Заранее спасибо за ответ