Недавно два пользователя нашего программного обеспечения из одной компании начали испытывать случайные закрытия (никаких сообщений об ошибках, диалоговых окнах сбоя, диалоговых окнах выхода и т. Д.). Мы смогли выделить то, что объединяет две системы, в конкретный программный продукт (диспетчер мобильных широкополосных устройств). Когда это программное обеспечение работает, наше программное обеспечение случайно закрывается в течение ~ 2 минут. Если мы выйдем из диспетчера широкополосной связи, наше программное обеспечение будет работать без проблем.
Я не могу представить себе причину, по которой было бы какое-либо взаимодействие между нашим программным обеспечением и их. Наше программное обеспечение не осуществляет доступ к сети, и в любом случае широкополосный модем даже не подключен.
Мы предоставили клиенту обходное решение (запустите наше программное обеспечение от имени администратора или выйдите из диспетчера мобильной широкополосной связи, прежде чем запускать наше программное обеспечение), но мы хотим решить эту проблему, чтобы им не пришлось беспокоиться о выполнении этих действий.
Я подключил к нашему программному обеспечению удаленный отладчик, но я не был уверен, где искать, чтобы точно выяснить, как умирает наше программное обеспечение. После завершения нашего процесса отладка заканчивается кодом завершения 0.
У меня вопрос, как я могу выяснить, как / почему процесс Win32 убивается и что я могу сделать, чтобы предотвратить его?
Редактировать: я открыл менеджер широкополосного доступа и библиотеки DLL, которые он использует, в шестнадцатеричном редакторе, и там есть ссылки на исполняемый файл с тем же именем, что и у нас. Так что я думаю, что это ссылка. Переименование нашего исполняемого файла решает проблему для наших пользователей, но, к сожалению, не глупость Sprint SmartView.
Редактировать : Чтобы помочь редкому другому разработчику, это прозвучит так: Если ваш исполняемый файл имеет имя phoenix.exe
, а ваши конечные пользователи используют Sprint SmartView, вот почему ваша программа случайно умирает. Переименование вашего исполняемого файла решит эту проблему (или потратит несколько месяцев своей жизни, пытаясь выяснить, кого следует уведомить в Sprint, чтобы это действительно было решено). Файл, который упоминает phoenix.exe
определенно, является WwanCoreSdk.dll
.