"отсутствует MFC42D.dll"???????
пожалуйста, объясните, что нужно ещё сделать для нормального приложения, которое работало бы на компе без установленной на нём VCPP.:???:
привет. недавно начал программить (VCPP6.0)-- кое что написал --> в exe-шник. скопировал на диск, перенёс на др. комп и запустил -- выдаётся такое сообщение: мол нет MFC42D.dll. че-то не пойму: должно же получиться нормал. приложение(MFC же всё-таки оболочка - все вызываемые функции в dll's системы должны находиться ?).
пожалуйста, объясните, что нужно ещё сделать для нормального приложения, которое работало бы на компе без установленной на нём VCPP.:???:
MFC оболочка - но в ней есть классы, которые и хранятся в указанной dll.
создавай приложение WinAPI, тогда внешних библиотек не потребуется. если приложение создаешь как MFC, то тебе обязательно придется подключать mfc42D.dll - на компе, куда прогу копируешь скопируй эту dll в System32/
MFC оболочка - но в ней есть классы, которые и хранятся в указанной dll.
создавай приложение WinAPI, тогда внешних библиотек не потребуется. если приложение создаешь как MFC, то тебе обязательно придется подключать mfc42D.dll - на компе, куда прогу копируешь скопируй эту dll в System32/
В Visual C++ SE можно использовать статические библиотеки MFC. При линковке весь код библиотек будет размещен в одном exe-файле и дополнительных библиотек не понадобится. Размер exe при этом соответственно увеличится.
привет. недавно начал программить (VCPP6.0)-- кое что написал --> в exe-шник. скопировал на диск, перенёс на др. комп и запустил -- выдаётся такое сообщение: мол нет MFC42D.dll. че-то не пойму: должно же получиться нормал. приложение(MFC же всё-таки оболочка - все вызываемые функции в dll's системы должны находиться ?).
пожалуйста, объясните, что нужно ещё сделать для нормального приложения, которое работало бы на компе без установленной на нём VCPP.:???:
mfc42d.dll - это debug версия MFC библиотеки. Он в отличие от mfc42.dll, вместе с ОС не поставляется.
Выбери Build->Set Active Configuration, установи активной конфигурацией Win32 Release и перекомпилируй проект.
Или же как советовал nikiforov,
Project->Settings, вкладка General, Microsoft Foundation Classes: Use MFC in Static Library
mfc42d.dll - это debug версия MFC библиотеки. Он в отличие от mfc42.dll, вместе с ОС не поставляется.
Выбери Build->Set Active Configuration, установи активной конфигурацией Win32 Release и перекомпилируй проект.
Или же как советовал nikiforov,
Project->Settings, вкладка General, Microsoft Foundation Classes: Use MFC in Static Library
спосибо за советы. я тоже думал про статическое линкование, но тогда размер уж очень сильно увеличивается. неужели всегда при установке на новый комп (где не установлена VCPP) всегда придется устанавливать и эту .dll??
а, кстати, что нужгно сделать, чтобы вообще отпала необходимость установки этой dll (типа, подсказать компиллятору, что ф-ии из этой dll мне не потребуются и т. п.).
спосибо.
... неужели всегда при установке на новый комп (где не установлена VCPP) всегда придется устанавливать и эту .dll??
MFC42.dll - release build библиотеки, поставляется вместе с системой.
MFC42D.dll - debug build библиотеки, не поставляется.
Чтобы использовался первый вариант, надо выполнить release build. И тогда устанавливать не придется.
спосибо.
Если в проекте используется MFC, то никак. Если Вы решили, что он не нужен, проще создать новый проект без использования MFC.
Если не использует MFC, тогда Project->Settings->General = Not Using MFC.
Если откомпилировать в Release версии, тогда нужно поставить только exe модуль.
Если не использует MFC, тогда Project->Settings->General = Not Using MFC.
не сипользовать MFC - то есть использовать WinAPI??
извините за "тупые" вопросы (машина, где установлена Microsoft Visual C++
, не подключена к сети и в другом городе, поэтому просматривая Ваши советы, не могу реализовать их сразу на практике): в VCPP6.0 есть опции, позволяющие "впихнуть" в .ехе все, чего нет в OS, но используется приложением (если, конечно, я правильно понял "Release-версию")?