Создайте широкополосное коммутируемое соединение ppoe в приложении C#.

Я студент, разрабатывающий приложение, которое помогает пользователю проверить скорость интернет-соединения на наборе коммутируемых соединений.

string[,] connections = new string[5, 2] { { "username", "password" }, { "username", "password" },{ "username", "password" },{ "username", "password" },{ "username", "password" } };

Соединения хранятся в массиве, как указано выше, я ищу самый простой способ их набора и проверки скорости каждого соединения, загружая файл с удаленного сервера. не могли бы эксперты помочь мне с хорошим решением?

Спасибо.

ПРИМЕЧАНИЯ

Я уже пробовал DOTR, я пытаюсь использовать, но не могу точно понять, как установить соединение.

RasEntry.CreateDialUpEntry

person DriverBoy    schedule 14.03.2013    source источник


Ответы (1)


DotRas — это оболочка для Windows RAS API, который использует файлы телефонной книги для хранения информации о том, как подключиться к удаленному серверу RAS, а затем команда, которая фактически набирает запись. Примеры, включенные в SDK, хотя и демонстрируют только VPN-подключение, могут без особых усилий применять те же принципы к коммутируемому соединению. Единственная разница заключается в вызове CreateDialUpEntry вместо CreateVpnEntry при создании записи.

Шаг 1. Создайте запись

Сначала вам нужно создать свою запись и добавить ее в телефонную книгу, чтобы операция набора номера могла найти ее позже:

string path = RasPhoneBook.GetPhoneBookPath(RasPhoneBookType.User);
using (RasPhoneBook pbk = new RasPhoneBook()) 
{
    pbk.Open(path);
    // Find the device that will be used to dial the connection.
    RasDevice device = RasDevice.GetDevices().Where(o => o.Name == "Your Modem Name" && o.DeviceType == RasDeviceType.Modem).First();

    RasEntry entry = RasEntry.CreateDialUpEntry("Your Entry", "5555551234", device);
    // Configure any options for your entry here via entry.Options
    pbk.Entries.Add(entry);
}

В результате в телефонной книге появится одна запись с названием «Ваша запись» и номер телефона «555-555-1234». Имейте в виду, что вам необходимо знать параметры, которые необходимо настроить для записи, чтобы обеспечить успешное подключение.

Шаг 2. Наберите номер

using (RasDialer dialer = new RasDialer()) 
{
    dialer.EntryName = "Your Entry";
    dialer.PhoneBookPath = path;
    dialer.Credentials = new NetworkCredential("User", "Password");
    dialer.Dial();
}

Это установит соединение с «Вашей записью», используя указанные учетные данные.

Шаг 3. Отключите запись

Чтобы отключиться, вам нужно найти активное соединение и вызвать на нем HangUp.

RasConnection conn = RasConnection.GetActiveConnections().Where(o => o.Name == "Your Entry").First();
conn.HangUp();

Я надеюсь, что это отвечает на ваш вопрос!

Редактировать: я хотел добавить, что если соединения уже существуют на тестируемой машине, вы можете просто сразу перейти ко второму шагу и набрать их.

person Jeff Winn    schedule 22.03.2013