Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Как програмно создать DialUp connection с его шарингом?

1.9K
30 мая 2007 года
Underworld
68 / / 29.03.2004
Поискал по форуму и не нашел то что мне надо. Может кто поможет?
Использую RAS функции:
Код:
DWORD dwRezult;
   DWORD dwRASSize = RAS_STRUCT_SIZE; // to make correct working on Win XP and 2000
   RASENTRY rasEntry;
   RASDIALPARAMS rasParams;
   char ch[255] = {0};

   AddToMemo("START CREATING ENTRY");
   memset(&rasEntry, 0, sizeof(RASENTRY));
   rasEntry.dwSize = dwRASSize;
   rasEntry.dwRedialCount=99;
   rasEntry.dwRedialPause=3;
   rasEntry.dwEncryptionType=ET_Optional;
   rasEntry.dwFramingProtocol=RASFP_Ppp;
   rasEntry.dwfNetProtocols = RASNP_Ip | RASNP_Ipx;
   strcpy(rasEntry.szLocalPhoneNumber, ip.c_str());
   rasEntry.dwfOptions = 1034748696UL;
   rasEntry.dwDialMode = 1UL;
   rasEntry.dwDialExtraPercent = 75UL;
   rasEntry.dwDialExtraSampleSeconds = 120UL;
   rasEntry.dwHangUpExtraPercent = 10UL;
   rasEntry.dwHangUpExtraSampleSeconds = 120UL;
   rasEntry.dwIdleDisconnectSeconds = 1200UL;
   rasEntry.dwfOptions2 = 879UL;
   strcpy(rasEntry.szDeviceName, GetDevice().c_str());
   rasEntry.dwFramingProtocol = RASFP_Ppp;
   rasEntry.dwType=RASET_Phone;
   strcpy(rasEntry.szDeviceType, RASDT_Modem);
   StrCopy(ch, entryName.c_str());
   Application->ProcessMessages();
   dwRezult = RasValidateEntryName( NULL, ch);
   Application->ProcessMessages();
   if(dwRezult != 0)
      return false;

   Application->ProcessMessages();
   dwRezult = RasSetEntryProperties( NULL, ch, &rasEntry, dwRASSize, NULL, 0);
   Application->ProcessMessages();
   if(dwRezult != 0)
      return false;

   memset(&rasParams, 0, sizeof(RASDIALPARAMS));

   rasParams.dwSize = sizeof(RASDIALPARAMS);
   StrCopy(rasParams.szEntryName,   entryName.c_str());
   StrCopy(rasParams.szUserName,    username.c_str());
   StrCopy(rasParams.szPassword,    password.c_str());
   StrCopy(rasParams.szPhoneNumber, ip.c_str());

   Application->ProcessMessages();
   dwRezult = RasSetEntryDialParams( NULL, &rasParams, !bStorePwd);
   Application->ProcessMessages();  
   if(dwRezult != 0)
      return false;

   return true;


Этот код работает нормально. Но появилась нужда сделать создаваемому соединению шаринг.

Когда создаешь соединение через ОС, то там есть чекбокс, если его установить, то тогда можно несколько ПК соединенных через сеть подключить к интернету, через DialUp connection, на который установленхый шаринг.

Есть идеи?
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог