Без включения (или зависимости от внешней библиотеки) почти невозможно.
Чтобы получить имя хоста, которое сопоставляется с IP, вам нужно выполнить запрос RARP, который в значительной степени требует от вас использования сокетов.Так или иначе, вы должны быть в состоянии создать сокет.Это то, что winsock2.lib предоставляет в качестве библиотеки.
Итак, вам лучше заставить winsock2.lib работать.Когда вы говорите, что ваша DLL падает без каких-либо ошибок компиляции, я предполагаю, что вы говорите о своем собственном коде, который вы пытаетесь скомпилировать в DLL.
А как насчет отладки?Вы пытались пройтись по коду, чтобы увидеть, где он не работает?Какой тип hostName?Убедитесь, что вы не пытаетесь получить доступ к элементам по нулевому указателю.И что вы правильно распределили память перед использованием переменных.В противном случае сообщите нам более конкретно, какое сообщение об ошибке вы получаете в отладчике.