Поиск:

Ответ в темуСоздание новой темы Создание опроса
> не работает exe под Win XP, не работает exe под Win XP 
:(
    Опции темы
chaos
Дата 27.2.2010, 21:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Серийный программист
****


Профиль
Группа: Завсегдатай
Сообщений: 2979
Регистрация: 7.7.2004
Где: Екатеринбург

Репутация: 5
Всего: 44



Цитата(Любитель @  27.2.2010,  14:36 Найти цитируемый пост)
 может просто выложите нерабочий экзешник, посмотрим, чего не хватает

может даже сам посмотреть через depends
PM WWW   Вверх
Artemon
Дата 27.2.2010, 21:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


а ты мне нравишься
***


Профиль
Группа: Завсегдатай
Сообщений: 1771
Регистрация: 24.2.2004
Где: Челябинск

Репутация: 2
Всего: 20



При загрузке программы в Depends - он ругается, что мол чего-то не хватает, НО НЕ ГОВОРИТ ЧЕГО, и не показывается каких-то не найденных зависимостей. Если обычно чего-то не хватает, то он показывал желтым значком.

OllyDbg, вообще отказывается запускать такой exe

Добавлено через 3 минуты и 34 секунды
Qt не собирал, ставил уже собранную комерческую версию 4.3

Добавлено через 5 минут и 50 секунд
Файлы типа msvc*80d.dll, тоже пробовал подсовывать, не помогло.
Именно файлы с буквой d в конце. Т.к. мне нужна дебажная сборка, работающая на других компах.


--------------------
Контроль топлива на топливозаправщиках, мониторинг автотранспорта, расчет зарплаты водителей www.rscat.ru
PM MAIL   Вверх
Любитель
Дата 27.2.2010, 22:14 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Программист-романтик
****


Профиль
Группа: Комодератор
Сообщений: 3645
Регистрация: 21.5.2005
Где: Воронеж

Репутация: 16
Всего: 92



Рантайм студии 2005 и выше "подсунуть" нельзя. Про это уже ни раз писалось, там загрузка через WinSxS.
Можешь выложить файл?


--------------------
PM MAIL ICQ Skype   Вверх
Artemon
Дата 27.2.2010, 22:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


а ты мне нравишься
***


Профиль
Группа: Завсегдатай
Сообщений: 1771
Регистрация: 24.2.2004
Где: Челябинск

Репутация: 2
Всего: 20



Вот тестовое приложение

http://slil.ru/28717031


--------------------
Контроль топлива на топливозаправщиках, мониторинг автотранспорта, расчет зарплаты водителей www.rscat.ru
PM MAIL   Вверх
Любитель
Дата 28.2.2010, 00:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Программист-романтик
****


Профиль
Группа: Комодератор
Сообщений: 3645
Регистрация: 21.5.2005
Где: Воронеж

Репутация: 16
Всего: 92



Во-первых, у тебя там ссылки на две версии VC 8.0 CRT (что не особо хорошо): 8.0.50727.4053, 8.0.50727.762. Лично у меня первой из них нету. Быстрый поиск показывает, что это патч на VC++ 2005 SP1 CRT (KB973544). После установки дебаг-версии CRT этой версии у меня VC-шные зависимости разрезольвились нормально (не хватает ещё Qt-шных библиотек). Но.. в любом случае референсить два рантайма - как-то странно..

Вообщем, итоговый вывод:
1. Ссылка на древнюю версию CRT идёт от кутешных библиотек (как я понимаю, взятых из странных источников).
2. Студии на компах стоят разные. На одном с апдейтами, на другом - без. Ну или как-т так.

Это сообщение отредактировал(а) Любитель - 28.2.2010, 00:23


--------------------
PM MAIL ICQ Skype   Вверх
chaos
Дата 28.2.2010, 01:46 (ссылка)    | (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Серийный программист
****


Профиль
Группа: Завсегдатай
Сообщений: 2979
Регистрация: 7.7.2004
Где: Екатеринбург

Репутация: 5
Всего: 44



Любитель, как доктор Хаус прям smile smile 
PM WWW   Вверх
borisbn
Дата 28.2.2010, 09:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 4875
Регистрация: 6.2.2010
Где: Ростов-на-Дону

Репутация: 48
Всего: 135



Цитата(Любитель @  27.2.2010,  22:14 Найти цитируемый пост)
Рантайм студии 2005 и выше "подсунуть" нельзя

можно. буквально вчера была такая же проблема (debug-версия программы на win2003 server). Скопировал каталог WinSxS с developer-ской машины на target-овскую, без замены существующих файлов, и всё заработало.



--------------------
Женщины отличаются от программистов тем, что у них чары состоят из стрингов
PM MAIL Jabber   Вверх
Artemon
Дата 28.2.2010, 09:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


а ты мне нравишься
***


Профиль
Группа: Завсегдатай
Сообщений: 1771
Регистрация: 24.2.2004
Где: Челябинск

Репутация: 2
Всего: 20



Цитата

1. Ссылка на древнюю версию CRT идёт от кутешных библиотек (как я понимаю, взятых из странных источников).


Что значит странные источники ? У меня лицензия от QT, по ссылке что они дали и взял.

Цитата

После установки дебаг-версии CRT этой версии


Ты под установкой имеешь ввиду, что ты скопировал дебажные dll в папку с exe ?

Цитата

Но.. в любом случае референсить два рантайма - как-то странно..


Да, я тоже в конце exe файла увидел два рантайма, но как отключить один из них ?

Это сообщение отредактировал(а) Artemon - 28.2.2010, 09:04


--------------------
Контроль топлива на топливозаправщиках, мониторинг автотранспорта, расчет зарплаты водителей www.rscat.ru
PM MAIL   Вверх
Artemon
Дата 28.2.2010, 09:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


а ты мне нравишься
***


Профиль
Группа: Завсегдатай
Сообщений: 1771
Регистрация: 24.2.2004
Где: Челябинск

Репутация: 2
Всего: 20



Посмотрел на обоих машинах, что за студии стоят,

на XP - Professional Edition SP1, FremeWork 2.0 SP1
на 2003 - Team Edition SP1, FremeWork 2.0 SP2

Добавлено через 1 минуту и 10 секунд
Цитата

Скопировал каталог WinSxS с developer-ской машины на target-овскую, без замены существующих файлов, и всё заработало.


Жестокий вариант, хотелосьбы подсунуть эти либы в каталог с exe


--------------------
Контроль топлива на топливозаправщиках, мониторинг автотранспорта, расчет зарплаты водителей www.rscat.ru
PM MAIL   Вверх
borisbn
Дата 28.2.2010, 11:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 4875
Регистрация: 6.2.2010
Где: Ростов-на-Дону

Репутация: 48
Всего: 135



Цитата(Artemon @  28.2.2010,  09:20 Найти цитируемый пост)
Жестокий вариант

Ну, и твоя задача (запустить debug-версию на другой машине) тоже жестковатая smile
Для release версии как раз и придуман vcredist_x86, а в твоём случае, если я правильно понял, нужно распространять 2 редиста: от твоей студии и от студии, в которой была собрана Qt. Чтобы этого не делать достаточно откомпилировать Qt на своей машине и распространять только свой редист


--------------------
Женщины отличаются от программистов тем, что у них чары состоят из стрингов
PM MAIL Jabber   Вверх
Любитель
Дата 28.2.2010, 20:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Программист-романтик
****


Профиль
Группа: Комодератор
Сообщений: 3645
Регистрация: 21.5.2005
Где: Воронеж

Репутация: 16
Всего: 92



Цитата(borisbn @  28.2.2010,  09:00 Найти цитируемый пост)
можно. буквально вчера была такая же проблема (debug-версия программы на win2003 server). Скопировал каталог WinSxS с developer-ской машины на target-овскую, без замены существующих файлов, и всё заработало.

Весь каталог?! Мне вас жалко smile
А так - ну, блин, магии нету.. Я имел ввиду под "нельзя подсунуть", что нельзя только кинуть длл-ку и всё. Понятно, что действия любого vc**_redist можно выполнить вручную..

Цитата(Artemon @  28.2.2010,  09:20 Найти цитируемый пост)
Жестокий вариант, хотелось бы подсунуть эти либы в каталог с exe 

Ну.. во-первых, всё таки замечу ещё раз, что это странное решение. Но, если очень хочется, то можно вместо централизованного хранилища использовать фичу прайват-сборок. Для этого понадобится:
1. Сама длл-ка (msvcr80d.dll)
2. Манифест Microsoft.VC80.DebugCRT.manifest

Оба их можно взять в папке со студией: VC\redist\Debug_NonRedist\x86\Microsoft.VC80.DebugCRT. Если на компьютере будет установлена сборка удовлетворяющая по версии (т. е. такая же, что в заэмбеженном манифесте экзешника или совместимая), то будет использоваться она. Если нет - та, которую ты "подсунешь". Правда, я навскидку не скажу, что будет с твоими двумя ссылками.. Возможно придётся править этот манифест, чтобы реальные длл-ки считались совместимыми с обеими версиями (конечно, при этом они и реально должны быть совместимы..).

Ну и, наконец, AFAIK легально дебаг длл-ки распространяются только со студией (ну или с апдейтами для неё). Все другие способы - незаконны.

Цитата(Artemon @  28.2.2010,  09:20 Найти цитируемый пост)
Посмотрел на обоих машинах, что за студии стоят,

на XP - Professional Edition SP1, FremeWork 2.0 SP1
на 2003 - Team Edition SP1, FremeWork 2.0 SP2

Пиши, плиз правильно - FrEmeWork глаза режет smile

Профешенал или тим-систем - это в данном случае не влияет. А вот версии сервис-паков (точнее - вообще всех апдейтов для студии) - оч даже влияют..

Добавлено через 5 минут и 44 секунды
Ах, да - забыл (в очередной раз) сказать, что делать с этой длл-кой и манифестом.
Так вот. Способов два. По приоритету (с точки зрения sxs-лоадера, а не моей, конечно):
1. Положить рядом с экзешником папку Microsoft.VC80.DebugCRT (с манифестом и длл-кой).
2. Положить манифест и длл-ку непосредственно в папку с экзешником.

Если нужна совместимость с win 2000 или даже ниже (хотя это уже совсем мистически выглядит), то там всё просто - о SxS-загрузке речь не идёт, используется PE EAT без вариантов. Потому там версии неважны, а длл-ки должны быть либо в папке с экзешником (приоритетней), либо в %PATH%-папках (по порядку).


--------------------
PM MAIL ICQ Skype   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С/С++: Кроссплатформенное программирование, QT/Gtk+/wxWidgets"
JackYF
Любитель
  • В заголовке темы в квадратных скобках обозначьте используемую вами библиотеку, например: [QT],[GTK],[wx].
  • Если вопрос актуален только для некоторой версии библиотеки, либо, если вы пользуетесь не самой последней версией, укажите это. Например: [QT4], [GTK2].
  • Все начинающие изучать Qt - не забудьте зайти сюда.
  • Проставьте несколько ключевых слов темы, чтобы её можно было легче найти.
  • В вопросе укажите полную версию версию библиотеки, а также все дополнительные используемые программные пакеты.
  • Не забывайте пользоваться кнопкой "Код".
  • Телепатов на форуме нет! Задавайте чёткий, конкретный и полный вопрос. Указывайте полностью ошибки компилятора и компоновщика.
  • Новое сообщение должно иметь прямое отношение к тематике этого раздела. Флуд, флейм, оффтопик запрещены.
  • Категорически запрещается обсуждение вареза, "кряков", взлома программ и т.д.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, Любитель.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | С/С++: Кроссплатформенное программирование, Qt/Gtk+/wxWidgets | Следующая тема »


 




[ Время генерации скрипта: 0.0804 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.