Модераторы: Snowy, Poseidon, MetalFan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> RAS API тип соединения, Не получается выставить нужный тип :( 
:(
    Опции темы
MadMas
Дата 19.1.2009, 10:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Блондинко
*


Профиль
Группа: Участник
Сообщений: 89
Регистрация: 5.5.2006
Где: Екатеринбург

Репутация: нет
Всего: нет



Задача - создать vpn соединение. Возникла проблема с типом соединения - почему-то автоматом ставится L2TP, в то время когда нужно PPTP. 

Пробовала просто через szDeviceName:='WAN Miniport (PPTP)' и через построение списка устройств и выбор нужного. Результат один и тот же.

Если же выставляю свойство dwVpnStrategy в любое из значений - соединение вообще перестает создаваться. Помогите, пожалуйста.. 

Код:
Код

Fillchar(RasEntry, sizeof(TRasEntry), 0);

{find device with pptp and type=vpn}
devs := 0;
devices := nil;
NeedBytes := SizeOf(TRasDevInfo);
GetMem(devices, NeedBytes);
Fillchar(devices^, sizeof(TRasDevInfo), 0);

 try
   devices^.dwSize := NeedBytes;
   dwError := RasEnumDevices(devices, NeedBytes, devs);

   if dwError=603 then //ERROR_BUFFER_TOO_SMALL
   begin
      NeedBytes:=sizeof(TRasDevInfo)*devs;

      FreeMem(devices, NeedBytes);
      GetMem(devices, NeedBytes);
      if devices <> nil then
      begin
      Fillchar(devices^, NeedBytes, 0);
      devices^.dwSize := sizeof(TRasDevInfo);
      dwError := RasEnumDevices(devices, NeedBytes, devs);
      end;

      if dwError=0 then
      begin
      while devs > 0 do
        begin
        if ((pos('PPTP',devices^.szDeviceName)>0) AND (devices^.szDeviceType='vpn'))
        then
         StrPCopy(RasEntry.szDeviceName, devices^.szDeviceName);
        Inc(devices);
        Dec(devs);
        end;
      end;
      end;

   finally;
   end;

with RasEntry do
begin
dwSize := sizeof(TRasEntry);
dwCountryID := 7;
dwCountryCode := 7;
szAreaCode := '';
szLocalPhoneNumber:=ip_VPN;
szDeviceType:= RASDT_Vpn;
dwfNetProtocols := RASNP_Ip;
dwFramingProtocol := RASFP_Ppp;
//dwVpnStrategy := 1;
dwfOptions := RASEO_PreviewUserPw;
end;


RasSetEntryPropertiesA(nil,
                      PChar(name_of_connection),
                      @RasEntry,
                      sizeof(TRasEntry),
                      nil,
                      0);
end;


PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Сети"
Snowy
Poseidon
MetalFan

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делится вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи

Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Snowy, Poseidon, MetalFan.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Сети | Следующая тема »


 




[ Время генерации скрипта: 0.0442 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.