/ENTRY (символ точки входа)
/ENTRY:function
Аргументы
function
Функция, указывающая определяемый пользователем начальный адрес для файла .exe или библиотеки DLL.
Замечания
Параметр /ENTRY указывает функцию точки входа в качестве начального адреса для файла .exe или библиотеки DLL.
Для использования соглашения о вызовах __stdcall
необходимо определить функцию. Параметры и возвращаемое значение зависят от того, является ли программа консольным приложением, приложением windows или библиотекой DLL. Рекомендуется разрешить компоновщику задать точку входа, чтобы библиотека времени выполнения C инициализирована правильно, а конструкторы C++ для статических объектов выполняются.
По умолчанию начальный адрес — это имя функции из библиотеки времени выполнения C. Компоновщик выбирает его в соответствии с атрибутами программы, как показано в следующей таблице.
Имя функции | По умолчанию для |
---|---|
mainCRTStartup (или wmainCRTStartup) | Приложение, использующее /SUBSYSTEM:CONSOLE; вызовы main (или wmain ) |
WinMainCRTStartup (или wWinMainCRTStartup) | Приложение, использующее вызовы WinMain /SUBSYSTEM:WINDOWS; (илиwWinMain ), которое необходимо определить для использования__stdcall |
_DllMainCRTStartup | БИБЛИОТЕКА DLL; вызывает DllMain , если он существует, который должен быть определен для использования __stdcall |
Если параметр /DLL или /SUBSYSTEM не указан, компоновщик выбирает подсистему и точку входа в зависимости от того, определена ли main
онаWinMain
.
Функции main
WinMain
и DllMain
являются тремя формами определяемой пользователем точки входа.
При создании управляемого образа функция, указанная в /ENTRY, должна иметь подпись (LPVOID var1, DWORD var2, LPVOID var3).
Сведения о том, как определить собственную DllMain
точку входа, см. в библиотеках DLL и поведении библиотеки visual C++.
Задание данного параметра компоновщика в среде разработки Visual Studio
Откройте диалоговое окно Страницы свойств проекта. Подробнее см. в статье Настройка компилятора C++ и свойства сборки в Visual Studio.
Выберите страницу свойств>компоновщика>конфигурации Advanced.
Измените свойство Точки входа.
Задание данного параметра компоновщика программным способом
- См. раздел EntryPointSymbol.