Подтвердить что ты не робот

Эффекты переключения между /SUBSYSTEM: CONSOLE to/SUBSYSTEM: WINDOWS в DLL

Я не мог найти ничего полезного в MSDN для этого случая. Используя Dependency Walker, в списке модулей я вижу смешанное использование Console и GUI.

Это влияет на компиляцию DLL?

4b9b3361

Ответ 1

Этот параметр влияет только на приложения (exe), а не на библиотеки (dll).

В документации говорится:

Параметр /SUBSYSTEM указывает среду для исполняемого файла.

Выбор подсистемы влияет на символ точки входа (или точку входа функция), который будет выбирать компоновщик.

Это не влияет на библиотеки, у которых есть их (необязательная) точка входа.

Дополнительная информация после комментария CyberShadow: само поле подсистемы, по-видимому, игнорируется при загрузке DLL. В этой статье о CSRSS говорится (основное внимание):

Кроме того, каждый процесс связан с одной, определенной подсистемой; это свойство задается компоновщиком (во время компиляции процесс) и находится в следующем поле структуры PE: [...]