РЕДАКТИРОВАТЬ: Это из-за глупости.Это проблема с несколькими мониторами.Просто из cmd.exe мы всегда открывались на основном мониторе, а из проводника мы всегда открывались на вторичном мониторе.Спасибо всем за помощь!
Недавно мы обнаружили странную ошибку.У нас есть приложение Qt + osg, которое ведет себя по-разному, если мы запускаем его из проводника, а не из командной строки.Запуск из проводника непригоден, тогда как запуск из командной строки (или при запуске из проводника простой пакетный файл, который вызывает .exe) работает должным образом.
Мы подозреваем переменные среды, потому что это все, что мы можем думать,Но тот факт, что он работает нормально с однострочным пакетным файлом, кажется, опровергает это.Я недостаточно знаком с окнами, чтобы знать о каких-либо тонких различиях в том, как он загружает исполняемые файлы, и где искать, чтобы выяснить.
Есть ли другие различия, которые могли бы объяснить это?Загружает ли Windows разные наборы переменных среды пользователя в каждом случае?ОС Windows XP с пакетом обновления 3.
Поведение при запуске из проводника (двойной щелчок program.exe) соответствует проблеме с драйвером или неправильной настройке сцены OSG: артефакты изображения, мигающие и странные цвета.
Поведение, возникающее при запуске того же исполняемого файла из cmd.exe (или двойным щелчком по файлу .bat рядом с .exe, содержащим только строку для запуска .exe), является правильным ожидаемым поведением: сценаправильно, не мигает и т. д.