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