Share via


RasEntryDlgA-Funktion (rasdlg.h)

Die RasEntryDlg-Funktion zeigt modale Eigenschaftenblätter an, die es einem Benutzer ermöglichen, Telefonbucheinträge zu bearbeiten. Beim Bearbeiten oder Kopieren eines vorhandenen Telefonbucheintrags zeigt die Funktion ein Eigenschaftenblatt für die Telefonbucheingabe an. Die RasEntryDlg-Funktion gibt zurück, wenn der Benutzer das Eigenschaftenblatt schließt.

Syntax

BOOL RasEntryDlgA(
  [in] LPSTR          lpszPhonebook,
  [in] LPSTR          lpszEntry,
  [in] LPRASENTRYDLGA lpInfo
);

Parameter

[in] lpszPhonebook

Zeiger auf eine NULL-beendete Zeichenfolge, die den vollständigen Pfad und Dateinamen einer Telefonbuchdatei (PBK) angibt. Wenn dieser Parameter NULL ist, verwendet die Funktion die aktuelle Standard-Telefonbuchdatei. Die Standard-Telefonbuchdatei wird vom Benutzer im Eigenschaftenblatt Benutzereinstellungen des DialogfeldsDFÜ-Netzwerk ausgewählt.

[in] lpszEntry

Zeiger auf eine NULL-Zeichenfolge, die den Namen des Zu bearbeitenden, kopieren oder erstellenden Telefonbucheintrags angibt.

Wenn Sie einen Eintrag bearbeiten oder kopieren, ist dieser Parameter der Name eines vorhandenen Telefonbucheintrags. Wenn Sie einen Eintrag kopieren, legen Sie das RASEDFLAG_CloneEntry-Flag im dwFlags-Element der RASENTRYDLG-Struktur fest.

Hinweis Das RASEDFLAG_CloneEntry-Flag ist seit Windows Vista und Windows Server 2008 veraltet. Es kann in nachfolgenden Versionen geändert oder entfernt werden. Kopieren Sie stattdessen einen Eintrag, indem Sie RasGetEntryProperties aufrufen, um den Eintrag abzurufen, und dann RasSetEntryProperties aufrufen, um den Eintrag mit einem neuen Namen zu speichern.
 
Wenn Sie einen Eintrag erstellen, ist dieser Parameter ein neuer Standardeintragsname, den der Benutzer ändern kann. Wenn dieser Parameter NULL ist, stellt die Funktion einen Standardnamen bereit. Wenn Sie einen Eintrag erstellen, legen Sie das RASEDFLAG_NewEntry-Flag im dwFlags-Element der RASENTRYDLG-Struktur fest.

[in] lpInfo

Zeiger auf eine RASENTRYDLG-Struktur , die zusätzliche Eingabe- und Ausgabeparameter angibt. Das dwSize-Element dieser Struktur muss sizeof(RASENTRYDLG) angeben. Verwenden Sie den dwFlags-Member , um anzugeben, ob Sie einen Eintrag erstellen, bearbeiten oder kopieren. Wenn ein Fehler auftritt, gibt das dwError-Element einen Fehlercode zurück. Andernfalls wird null zurückgegeben.

Rückgabewert

Wenn der Benutzer einen Telefonbucheintrag erstellt, kopiert oder bearbeitet, ist der Rückgabewert TRUE. Andernfalls gibt die Funktion FALSE zurück.

Wenn ein Fehler auftritt, legt RasEntryDlg den dwError-Member der RASENTRYDLG-Struktur auf einen Wert aus Routing- und RAS-Fehlercodes oder Winerror.h fest.

Hinweise

Die Funktionen RasCreatePhonebookEntry und RasEditPhonebookEntry rufen die RasEntryDlg-Funktion auf.

Der folgende Beispielcode zeigt ein Eigenschaftenblatt an, um einen neuen Eintrag zu erstellen. Die variable lpszEntry gibt den Standardnamen für den neuen Eintrag an.

#include <windows.h>
#include <stdio.h>
#include "ras.h"
#include "rasdlg.h"
#include <tchar.h>

DWORD __cdecl wmain(){

    DWORD dwRet = ERROR_SUCCESS;
    BOOL nRet = TRUE;
    LPTSTR lpszEntry = L"EntryName";

    // Allocate heap memory and initialize RASENTRYDLG structure
    LPRASENTRYDLG lpEntry = (LPRASENTRYDLG)HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(RASENTRYDLG));
    if (lpEntry == NULL){
        wprintf(L"HeapAlloc failed.\n");
        return 0;
    }
    
    // The RASENTRYDLG->dwSize member has to be initialized or the RRAS APIs will fail below.
    lpEntry->dwSize = sizeof(RASENTRYDLG);
    lpEntry->dwFlags |= RASEDFLAG_NewEntry;

    // Create the new entry using a user dialog
    nRet = RasEntryDlg(NULL, lpszEntry, lpEntry);

    // Any error codes are returned in lpEntry
    dwRet = lpEntry->dwError;
    
    if (nRet == TRUE) {
        wprintf(L"New entry created: %s\n", lpEntry->szEntry);

        // Clean up: delete the new entry
        dwRet = RasDeleteEntry(NULL, lpszEntry);
        if (dwRet != ERROR_SUCCESS) {
            wprintf(L"RasDeleteEntry failed: Error = %d\n", dwRet);
        }

    } 
    else {
        if (dwRet != ERROR_SUCCESS) {
            wprintf(L"RasEntryDlg failed: Error = %d\n", dwRet);
        }
        else {
            wprintf(L"User pressed Cancel\n");
        }
    }

    HeapFree(GetProcessHeap(), 0, lpEntry);
    return 0;
}

Hinweis

Der rasdlg.h-Header definiert RASENTRYDLG als Alias, der die ANSI- oder Unicode-Version dieser Funktion basierend auf der Definition der UNICODE-Präprozessorkonstante automatisch auswählt. Das Mischen der Verwendung des codierungsneutralen Alias mit nicht codierungsneutralem Code kann zu Nichtübereinstimmungen führen, die zu Kompilierungs- oder Laufzeitfehlern führen. Weitere Informationen finden Sie unter Konventionen für Funktionsprototypen.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 2000 Professional [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows 2000 Server [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile rasdlg.h
Bibliothek Rasdlg.lib
DLL Rasdlg.dll

Weitere Informationen

RASENTRYDLG

RasCreatePhonebookEntry

RasCustomEntryDlg

RasEditPhonebookEntry

Ras-Dienst (Ras) – Übersicht

Funktionen des RAS-Diensts