Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Trukhanov_VP
36 / 36 / 5
Регистрация: 28.03.2013
Сообщений: 278
Записей в блоге: 2
#1

Ряд ошибок в Visual c++ - C++

19.07.2013, 10:29. Просмотров 1075. Ответов 11
Метки нет (Все метки)

Добрый день!

Пишу консольное приложение и при компиляции (F7) в выводе выплывают следующие ошибки:

1. 1>Pr1.exp : warning LNK4070: директива /OUT:HAL_SCReader.dll в .EXP отличается от имени выходного файла "C:\Users\DNS\Documents\Visual Studio 2005\Projects\Pr1\Debug\Pr.exe"; директива игнорируется

2. 1>C:\Users\DNS\Documents\Visual Studio 2005\Projects\Pr1\Debug\Pr1.exe : warning LNK4086: точка входа "_mainCRTStartup" не является __stdcall с аргументами из 12 байт; образ нельзя запустить

3. 1>MSVCRTD.lib(crtexe.obj) : error LNK2019: ссылка на неразрешенный внешний символ _main в функции ___tmainCRTStartup

и 12 ошибок типа 1>HAL_SCReader.obj : error LNK2019: ссылка на неразрешенный внешний символ _protWriteEx в функции _crInit


Как исправить ошибки?

Примечание:
В проекте у меня есть *.lib в котором прописаны вызываемые функции(процедуры) из dll, в том числе и функция crInit, но внутри dll, на сколько я понял, запрашиваются функции(процедуры) из других dll. Например функция protWriteEx находится в системной dll,но вызывается через функцию моей dll, предварительно вызвав системную dll.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
ValeryS
Модератор
6478 / 4944 / 455
Регистрация: 14.02.2011
Сообщений: 16,386
19.07.2013, 10:31     Ряд ошибок в Visual c++ #2
Цитата Сообщение от Trukhanov_VP Посмотреть сообщение
но вызывается через функцию моей dll,
ты Дллку создаешь?
тогда откуда main взялся?
Цитата Сообщение от Trukhanov_VP Посмотреть сообщение
>MSVCRTD.lib(crtexe.obj) : error LNK2019: ссылка на неразрешенный внешний символ _main в функции ___tmainCRTStartup
ты как проект создаешь?
Trukhanov_VP
36 / 36 / 5
Регистрация: 28.03.2013
Сообщений: 278
Записей в блоге: 2
19.07.2013, 10:47  [ТС]     Ряд ошибок в Visual c++ #3
ты Дллку создаешь?
Нет, dll уже была готовая. Я пишу консольное приложение.
тогда откуда main взялся?
Откуда взялся main не понимаю сам, так как у меня его в коде нету.
ты как проект создаешь?
1. Файл -> Создать -> Проект..
2. Visual C++ -> Win32 -> Консольное приложение Win32 (создаю пустой проект)

Далее создаю файлы *.cpp, *.h, *.lib и т.д. А также имеются внешние зависимости.


Как посмотреть путь к внешним файлам *.h ?
ValeryS
Модератор
6478 / 4944 / 455
Регистрация: 14.02.2011
Сообщений: 16,386
19.07.2013, 10:53     Ряд ошибок в Visual c++ #4
Цитата Сообщение от Trukhanov_VP Посмотреть сообщение
Откуда взялся main не понимаю сам,
Цитата Сообщение от Trukhanov_VP Посмотреть сообщение
Visual C++ -> Win32 -> Консольное приложение Win32 (создаю пустой проект)
вот оттуда и взялся для консоли необходим main (это главная функция)стартовый код на него ссылается, а у тебя его нету
Цитата Сообщение от Trukhanov_VP Посмотреть сообщение
Далее создаю файлы *.cpp, *.h, *.lib и т.д. А также имеются внешние зависимости.
как создаешь ?
просто создать новый файл? или через "обозреватель решений"
и как можно создать *.lib ???
его можно только подключить

Добавлено через 1 минуту
Цитата Сообщение от Trukhanov_VP Посмотреть сообщение
Как посмотреть путь к внешним файлам *.h
в смысле что значит посмотреть?
где лежат? через проводник Виндоса
а в проекте или забиваешь путь или в #include" забиваешь полное имя(вместе с путем)
Trukhanov_VP
36 / 36 / 5
Регистрация: 28.03.2013
Сообщений: 278
Записей в блоге: 2
19.07.2013, 10:58  [ТС]     Ряд ошибок в Visual c++ #5
вот оттуда и взялся для консоли необходим main (это главная функция)стартовый код на него ссылается, а у тебя его нету
То есть я должен прописать в *.cpp:
C++
1
2
3
4
void main()
{
     // Выполняемые функции
}
Да ?
как создаешь ?
просто создать новый файл? или через "обозреватель решений"
Проект -> Добавить новый элемент... (например, создаю свой *.h).
Проект -> Существующий элемент... (добавляю готовый *.h).

и как можно создать *.lib ???
его можно только подключить
Sorry! Я перепутал, я имел ввиду файл *.def.
ValeryS
Модератор
6478 / 4944 / 455
Регистрация: 14.02.2011
Сообщений: 16,386
19.07.2013, 11:00     Ряд ошибок в Visual c++ #6
Цитата Сообщение от Trukhanov_VP Посмотреть сообщение
То есть я должен прописать в *.cpp:
да
кинь сюда проект посмотрим
Trukhanov_VP
36 / 36 / 5
Регистрация: 28.03.2013
Сообщений: 278
Записей в блоге: 2
19.07.2013, 11:03  [ТС]     Ряд ошибок в Visual c++ #7
в смысле что значит посмотреть?
где лежат? через проводник Виндоса
а в проекте или забиваешь путь или в #include" забиваешь полное имя(вместе с путем)
К примеру при попытке открыть *.h у меня возникает вот такая ошибка.
Миниатюры
Ряд ошибок в Visual c++  
Trukhanov_VP
36 / 36 / 5
Регистрация: 28.03.2013
Сообщений: 278
Записей в блоге: 2
19.07.2013, 11:25  [ТС]     Ряд ошибок в Visual c++ #8
кинь сюда проект посмотрим
Проект я кинуть не могу, слишком конфиденциально

Добавлено через 15 минут
После добавления функции
C++
1
2
3
void main()
{
}
ошибка
3. 1>MSVCRTD.lib(crtexe.obj) : error LNK2019: ссылка на неразрешенный внешний символ _main в функции ___tmainCRTStartup
пропала!
Уже что-то! ;-)!
ValeryS
Модератор
6478 / 4944 / 455
Регистрация: 14.02.2011
Сообщений: 16,386
19.07.2013, 11:52     Ряд ошибок в Visual c++ #9
Цитата Сообщение от Trukhanov_VP Посмотреть сообщение
После добавления функции
уже что то
теперь осталось заполнить эту функцию
иначе прога откроется и тут же закроется
Trukhanov_VP
36 / 36 / 5
Регистрация: 28.03.2013
Сообщений: 278
Записей в блоге: 2
19.07.2013, 12:05  [ТС]     Ряд ошибок в Visual c++ #10
Да ! Осталось только поправить вот эти ошибки!
1. 1>Pr1.exp : warning LNK4070: директива /OUT:HAL_SCReader.dll в .EXP отличается от имени выходного файла "C:\Users\DNS\Documents\Visual Studio 2005\Projects\Pr1\Debug\Pr.exe"; директива игнорируется

2. 1>C:\Users\DNS\Documents\Visual Studio 2005\Projects\Pr1\Debug\Pr1.exe : warning LNK4086: точка входа "_mainCRTStartup" не является __stdcall с аргументами из 12 байт; образ нельзя запустить

и 12 ошибок типа 1>HAL_SCReader.obj : error LNK2019: ссылка на неразрешенный внешний символ _protWriteEx в функции _crInit
Быть может поясните что-нибудь по этим ошибкам?)
Croessmah
Модератор
Эксперт CЭксперт С++
12696 / 7170 / 800
Регистрация: 27.09.2012
Сообщений: 17,678
Записей в блоге: 2
Завершенные тесты: 1
19.07.2013, 12:09     Ряд ошибок в Visual c++ #11
Цитата Сообщение от Trukhanov_VP Посмотреть сообщение
что-нибудь по этим ошибкам?
MSDN: Linker Tools Warning LNK4086
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.07.2013, 14:01     Ряд ошибок в Visual c++
Еще ссылки по теме:

Visual C++ 2012. Консоль. scanf(). Обработка ошибок ввода C++
Разбор ошибок C++
C++ В Чем разница между MS Visual C++ 2011 vs MS Visual C++2012
C++ Мониторинг ошибок в Visual Studio 2013
C++ Множество ошибок в проекте Visual Studio после небольшого изменения кода

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Trukhanov_VP
36 / 36 / 5
Регистрация: 28.03.2013
Сообщений: 278
Записей в блоге: 2
19.07.2013, 14:01  [ТС]     Ряд ошибок в Visual c++ #12
В HAL_SCReader.dll, которую я описываю в *.def, есть ряд функций(процедур), которые я экспортирую в проект. В HAL_SCReader.dll экспортируются функции(процедуры) из других dll:
WinSCard.dll,HAL_Common.dll, HAL_Protocol.dll, MSVCR110.dll, KERNEL32.dll, HAL_SCReader.dll
При компиляции программы запрашивается путь к функциям которые были вызваны из других dll для построения HAL_SCReader.dll. Как это понимать???
Yandex
Объявления
19.07.2013, 14:01     Ряд ошибок в Visual c++
Ответ Создать тему
Опции темы

Текущее время: 02:42. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru