Freigeben über


RasEntryDlgA-Funktion (rasdlg.h)

Die RasEntryDlg--Funktion zeigt modale Eigenschaftenblätter an, mit denen ein Benutzer Telefonbucheinträge bearbeiten kann. Wenn Sie einen vorhandenen Phone-Book-Eintrag bearbeiten oder kopieren, zeigt die Funktion ein Eigenschaftenblatt für das Telefonbucheintrag 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

Zeigen Sie auf eine NULL--terminated-Zeichenfolge, die den vollständigen Pfad und Dateinamen einer PbK-Datei (Phone-Book) angibt. Wenn dieser Parameter NULL-ist, verwendet die Funktion die aktuelle Standarddatei des Telefonbuchs. Die Standardmäßige Telefonbuchdatei ist die vom Benutzer im Eigenschaftenblatt Benutzereinstellungen Eigenschaftenblatt des Dialogfelds DFÜ-Netzwerk ausgewählt.

[in] lpszEntry

Zeigen Sie auf eine NULL--terminated-Zeichenfolge, die den Namen des Telefonbucheintrags angibt, der bearbeitet, kopiert oder erstellt werden soll.

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 Member der RASENTRYDLG Struktur fest.

Hinweis Das RASEDFLAG_CloneEntry Flag ist ab Windows Vista und Windows Server 2008 veraltet. Sie kann in nachfolgenden Versionen geändert oder nicht verfügbar sein. Kopieren Sie stattdessen einen Eintrag, indem Sie RasGetEntryProperties- aufrufen, um den Eintrag abzurufen, und rufen Sie dann RasSetEntryProperties auf, um den Eintrag unter einem neuen Namen zu speichern.
 
Wenn Sie einen Eintrag erstellen, ist dieser Parameter ein standardmäßiger neuer Eintragsname, 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 Member der RASENTRYDLG- Struktur fest.

[in] lpInfo

Zeiger auf eine RASENTRYDLG Struktur, die zusätzliche Eingabe- und Ausgabeparameter angibt. Das dwSize Mitglied dieser Struktur muss sizeof(RASENTRYDLG) angeben. Verwenden Sie die dwFlags Member, um anzugeben, ob Sie einen Eintrag erstellen, bearbeiten oder kopieren. Wenn ein Fehler auftritt, gibt das dwError Member 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 FALSEzurück.

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

Bemerkungen

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

Im folgenden Beispielcode wird ein Eigenschaftenblatt zum Erstellen eines neuen Eintrags angezeigt. 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;
}

Anmerkung

Der rasdlg.h-Header definiert RASENTRYDLG als Alias, der automatisch die ANSI- oder Unicode-Version dieser Funktion basierend auf der Definition der UNICODE-Präprozessorkonstante auswählt. Das Mischen der Verwendung des codierungsneutralen Alias mit Code, der nicht codierungsneutral ist, 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
mindestens unterstützte Client- Windows 2000 Professional [nur Desktop-Apps]
mindestens unterstützte Server- Windows 2000 Server [nur Desktop-Apps]
Zielplattform- Fenster
Header- rasdlg.h
Library Rasdlg.lib
DLL- Rasdlg.dll

Siehe auch

RASENTRYDLG

RasCreatePhonebookEntry

RasCustomEntryDlg

RasEditPhonebookEntry

übersicht über Ras(Remote Access Service)

Remotezugriffsdienstfunktionen