Поделиться через


Функция RasPhonebookDlgA (rasdlg.h)

Функция RasPhonebookDlg отображает основное диалоговое окно "Сеть телефонного подключения". В этом модальном диалоговом окне пользователь может назвонить, изменить или удалить выбранную запись телефонной книги, создать новую запись телефонной книги или указать параметры пользователя. Функция RasPhonebookDlg возвращается при закрытии диалогового окна.

Синтаксис

BOOL RasPhonebookDlgA(
  [in]      LPSTR       lpszPhonebook,
  [in]      LPSTR       lpszEntry,
  [in, out] LPRASPBDLGA lpInfo
);

Параметры

[in] lpszPhonebook

Указатель на строку null-terminated, указывающую полный путь и имя файла телефонной книги (PBK). Если этот параметр NULL, функция использует текущий файл телефонной книги по умолчанию. Файл телефонной книги по умолчанию — это файл, выбранный пользователем в разделе настройки пользователя свойств диалогового окна "Подключение к сети".

[in] lpszEntry

Указатель на строку null-terminated, указывающую имя записи телефонной книги для первоначального выделения. Если этот параметр значение NULLили если указанная запись не существует, диалоговое окно выделяет первую запись в алфавитном списке.

[in, out] lpInfo

Указатель на структуру RASPBDLG, указывающую дополнительные входные и выходные параметры.

Во входных данных элемент dwSize этой структуры должен указать sizeof(RASPBDLG).

Если возникает ошибка, dwError член структуры получает в выходных данных код ошибки; в противном случае он получает ноль.

Возвращаемое значение

Если пользователь выбирает кнопку Connect и функция устанавливает соединение, возвращаемое значение равно TRUE. В противном случае функция возвращает FALSE.

Если возникает ошибка, элемент dwError структуры RASPBDLG возвращает значение из кодов ошибок маршрутизации и удаленного доступа или Winerror.h.

В следующем примере кода откроется диалоговое окно "Сеть с телефонным подключением". В диалоговом окне отображаются сведения о наборе для первой записи из файла телефонной книги по умолчанию.

#include <windows.h>
#include <stdio.h>
#include "ras.h"
#include "rasdlg.h"
#pragma comment(lib, "rasapi32.lib")

int main (){
    
    // Initialize the return code
    BOOL nRet = TRUE;

    // Allocate heap memory for the RASPBLDG structure
    RASPBDLG * lpInfo = (LPRASPBDLG)HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(RASPBDLG));
    
    // The dwsize member of lpInfo must contain the structure size, or the 
    // call to RasPhonebookDlg will fail
    lpInfo->dwSize = sizeof(RASPBDLG);
     
    // Open a user dialog box  
    nRet = RasPhonebookDlg(NULL,NULL,lpInfo);
    
    if(nRet == TRUE){
        // The user dialed a connection successfully
        printf("User pressed Connect\n");
    }else{
        if(lpInfo->dwError != 0){
            printf("RasPhonebookDlg failed: Error = %d\n", lpInfo->dwError);
        }else{
            // The user closed the dialog box manually
            printf("User pressed Close\n");
        }
    }

    // Free the heap memory for the RASPBLDG structure
    HeapFree(GetProcessHeap(), 0, lpInfo);
    return 0;
}

Замечания

Заметка

Заголовок rasdlg.h определяет RasPhonebookDlg как псевдоним, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора ЮНИКОДа. Сочетание использования псевдонима, нейтрального для кодирования, с кодом, не зависящим от кодирования, может привести к несоответствиям, которые приводят к ошибкам компиляции или среды выполнения. Дополнительные сведения см. в соглашениях о прототипах функций.

Требования

Требование Ценность
минимальные поддерживаемые клиентские Windows 2000 Профессиональный [только классические приложения]
минимальный поддерживаемый сервер Windows 2000 Server [только классические приложения]
целевая платформа Виндоус
заголовка rasdlg.h
библиотеки Rasdlg.lib
DLL Rasdlg.dll

См. также

RASPBDLG

Обзор службы удаленного доступа (RAS)

функции службы удаленного доступа