|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
27.12.2010, 22:09 | #1 |
Пользователь
Регистрация: 24.01.2009
Сообщений: 16
|
Проблемы с GetHostByName
Нужна помощь. Есть функция которая показывает IP адрес по имени хоста. Работала она отлично, но в delphi 2010 не хочет, так как GetHostByName больше не работает с PChar, только с PAnsiChar, но при этом выдает неправильный результат. Подскажите пожалуйста, что можно с этим сделать? Заранее премного благодарен.
function getIPFromHost(const HostName: string): string; type TaPInAddr = array[0..10] of PInAddr; PaPInAddr = ^TaPInAddr; var phe: PHostEnt; pptr: PaPInAddr; i: Integer; GInitData: TWSAData; begin WSAStartup($101, GInitData); Result := ''; phe := GetHostByName(PChar(HostName)); if phe = nil then Exit; pPtr := PaPInAddr(phe^.h_addr_list); i := 0; while pPtr^[i] <> nil do begin Result := inet_ntoa(pptr^[i]^); Inc(i); end; WSACleanup; end; |
27.12.2010, 22:54 | #2 |
Пользователь
Регистрация: 24.01.2009
Сообщений: 16
|
Все, в ответе не нуждаюсь, разобрался сам. Кому будет интересно и на будущее, вдруг кому нить пригодиться. Изменить тип константы в объявлении функции со String на PAnsiChar. А в GetHostByName убрать PChar.
function getIPFromHost(const HostName: PAnsiChar): string; type TaPInAddr = array[0..10] of PInAddr; PaPInAddr = ^TaPInAddr; var ... phe := GetHostByName(HostName); ... end; WSACleanup; end; |
28.12.2010, 00:55 | #3 |
Старожил
Регистрация: 13.08.2009
Сообщений: 2,581
|
Код:
Опытный программист на C++ легко решает любые не существующие в Паскале проблемы.
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Проблемы с С# | PDV199003 | Помощь студентам | 0 | 04.06.2010 14:38 |
проблемы с if | Vergil | Общие вопросы C/C++ | 8 | 21.04.2010 21:43 |
Проблемы с монИтором. | ROD | Компьютерное железо | 9 | 25.11.2009 09:26 |
Проблемы с рендомизацией си | dampirik | Помощь студентам | 6 | 05.09.2009 01:15 |
проблемы с IE | xakzona | Помощь студентам | 1 | 16.12.2008 21:53 |