Работа в VS 2005

Тема в разделе "WASM.SOFTWARE", создана пользователем Григорий, 29 янв 2007.

  1. Григорий

    Григорий New Member

    Публикаций:
    0
    Регистрация:
    28 сен 2006
    Сообщения:
    32
    Добрый вечер, всем!
    У меня есть такой вопрос: пишу программу в Visual Studio 2005, компилирую. Переношу exe на компьютер, на котором не установлена VS 2005. Запускаю и получаю ответ: "Не удается выполнить программу". Какие нужны настройки в VS 2005, что бы запустить программу на другом компьютере?
     
  2. apple

    apple Виктор

    Публикаций:
    0
    Регистрация:
    26 апр 2005
    Сообщения:
    907
    Адрес:
    Russia
    Григорий, очень может быть, что на компьютере не установлен .NET 2.0 или 3.0 или MDAC 2.8 и выше.
    Что за программа, на котором языке.
     
  3. Asterix

    Asterix New Member

    Публикаций:
    0
    Регистрация:
    25 фев 2003
    Сообщения:
    3.576
    если прога пишется на C++ то нужно следить за тем CRT была прилинкована статически,
    или не использовать CRT совсем
     
  4. Noble Ghost

    Noble Ghost New Member

    Публикаций:
    0
    Регистрация:
    28 апр 2004
    Сообщения:
    204
    Адрес:
    Russia
    или таскать msvc80.dll с проектом.
     
  5. Arthur

    Arthur New Member

    Публикаций:
    0
    Регистрация:
    27 янв 2007
    Сообщения:
    494
    Если на 2005, то скорее всего на другом компе нет Framework.NET 2.0. Покавыряйся на первом компе в диретории куда установлена Visual Studio 2005, и поищии фаил с именем dotnetfx.exe (весит ~23 метра), если найдешь хватай его и установи на новый комп, ну и пускай программу.
     
  6. GMax

    GMax Member

    Публикаций:
    0
    Регистрация:
    3 июл 2006
    Сообщения:
    218
    А кто-нибудь пробывал в Visual Studio 2005 прилинковать статически msvc80.dll?
    У меня неполучилось. Пришлось не нужный импорт вручную убивать, только тогда удалось запустить на машине без
    msvc80.dll и пр.
     
  7. alpet

    alpet Александр

    Публикаций:
    0
    Регистрация:
    21 сен 2004
    Сообщения:
    1.221
    Адрес:
    Russia
    GMax

    В этом как раз ничего сложного нет. Все задается в свойствах проекта (Config Props.->Use of MFC). По идее, пишушим на WinAPI надо вообще указывать параметр Use Standard Windows Libraries.
     
  8. IceStudent

    IceStudent Active Member

    Публикаций:
    0
    Регистрация:
    2 окт 2003
    Сообщения:
    4.300
    Адрес:
    Ukraine
    alpet
    Да нет, это задаётся ключами /MT (статическая crt) или /MD (msvcrNN.dll).
     
  9. GMax

    GMax Member

    Публикаций:
    0
    Регистрация:
    3 июл 2006
    Сообщения:
    218
    IceStudent
    Большое спасибо помогло

    Правда наверное остановлюсь на своем методе, т.к. размер проги увеличился в 2,5 раза (с 108Кб до 236Кб).
    VC добавил всю msvc80.dll со всеми функциями (хотя нужна была всего одна).
    Я просто в импорте заменил msvc80.dll на msvc60.dll, а пару функций просто удалил.
     
  10. IceStudent

    IceStudent Active Member

    Публикаций:
    0
    Регистрация:
    2 окт 2003
    Сообщения:
    4.300
    Адрес:
    Ukraine
    Ну, можешь подставлять просто libcmt.lib от vc6, тогда с импортом не придётся возиться.
     
  11. Григорий

    Григорий New Member

    Публикаций:
    0
    Регистрация:
    28 сен 2006
    Сообщения:
    32
    За ответы спасибо. Все попробую и отвечу о результатах.
     
  12. Григорий

    Григорий New Member

    Публикаций:
    0
    Регистрация:
    28 сен 2006
    Сообщения:
    32
    Пишу на C++.
     
  13. AsmGuru62

    AsmGuru62 Member

    Публикаций:
    0
    Регистрация:
    12 сен 2002
    Сообщения:
    689
    Адрес:
    Toronto
    Недавно "налетел" на то же самое. После двух часов копания в опциях и перестройки кода :) нашёл вот это:

    1. Из меню: "Project -> <your project name> Properties..."
    2. Из дерева: "Configuration Properties -> C/C++ -> Code Generation"

    Замени "Multi-threaded DLL" на "Multi-threaded".
    Просто выбрать нужное, но без "DLL".
     
  14. Григорий

    Григорий New Member

    Публикаций:
    0
    Регистрация:
    28 сен 2006
    Сообщения:
    32
    Добрый вечер! Все испробывал кроме последнего. Ничего не помогло. Последнее действие испробывать не получилось т.к. у меня происходит вылет с прозьбой об отправки сообщения в Microsoft. Я сделал по другому. Создал проект в VS 6.0 и перенес его в VS 2005. И теперь при создании нового проекта использую, этот проект в качестве исходного.
     
  15. CroX

    CroX New Member

    Публикаций:
    0
    Регистрация:
    9 сен 2006
    Сообщения:
    37
    Как уже говорилось выше, наверняка это связано с тем, что ты создаешь проект под .NET. У программ, работающих в Win32 (а именно такие и создает VC 6.0) никаких проблем с переносом быть не должно. Если использование .NET в твоих разработках не критично, то имеет смысл от нее отказаться.
     
  16. IceStudent

    IceStudent Active Member

    Публикаций:
    0
    Регистрация:
    2 окт 2003
    Сообщения:
    4.300
    Адрес:
    Ukraine
    Не имеет, т.к. студия 7.1 намного превосходит 6.0. Правда, более требовательна к ресурсам и несёт с собой дотнет.

    Но разговоры о том, что 7.0+ не могут создавать чистые бинарики (переносимые между 95-виста) лишь говорят о том, что вы не разобрались с настройками, умолчания которых меняются от версии к версии.
     
  17. CroX

    CroX New Member

    Публикаций:
    0
    Регистрация:
    9 сен 2006
    Сообщения:
    37
    IceStudent
    Я имел в виду - отказаться от .NET, а не от студии.
     
  18. tmp_name_0001

    tmp_name_0001 New Member

    Публикаций:
    0
    Регистрация:
    26 июл 2006
    Сообщения:
    85
    Как раз таки наверняка из-за msvc80.dll. Отключи CRT или, если он нужен то используй методы описаные выше...
     
  19. wasm_test

    wasm_test wasm test user

    Публикаций:
    0
    Регистрация:
    24 ноя 2006
    Сообщения:
    5.582
    Отказаться от .NET и писать без него.
     
  20. Y_Mur

    Y_Mur Active Member

    Публикаций:
    0
    Регистрация:
    6 сен 2006
    Сообщения:
    2.494
    Странно у меня нет в системе ни msvc80.dll ни msvc60.dll - значит и прога Григория работать не будет?
    [offtop]
    потестил на масме gcvt, ecvt, fcvt из msvcrtXX.dll версий 10-40 - одинаково глухие тормоза :dntknw:(
    Казалось бы crt популярнейшая либа, да кто тому же опенсорцная (типа пример для подражания), неужели за столько версий нельзя было её хоть немного оптимизировать?
    [/offtop]
    Или я всё таки не те dll тестирую?