Función RasDeleteEntryA (ras.h)
La función RasDeleteEntry elimina una entrada de una libreta de teléfonos.
Sintaxis
DWORD RasDeleteEntryA(
[in] LPCSTR unnamedParam1,
[in] LPCSTR unnamedParam2
);
Parámetros
[in] unnamedParam1
Puntero a una cadena terminada en null que especifica la ruta de acceso completa y el nombre de archivo de un archivo de libreta de teléfonos (PBK). Si este parámetro es NULL, la función usa el archivo de libreta de teléfonos predeterminado actual. El archivo de libreta telefónica predeterminado es el seleccionado por el usuario en la hoja de propiedades Preferencias de usuario del cuadro de diálogo Redes de acceso telefónico .
Windows Me/98/95: Este parámetro siempre debe ser NULL. Las redes de acceso telefónico almacenan entradas de libreta de teléfonos en el Registro en lugar de en un archivo de libreta de teléfonos.
[in] unnamedParam2
Puntero a una cadena terminada en null que especifica el nombre de una entrada existente que se va a eliminar.
Valor devuelto
Si la función se ejecuta correctamente, el valor devuelto es ERROR_SUCCESS.
Si se produce un error en la función, el valor devuelto es uno de los siguientes códigos de error o un valor de Enrutamiento y códigos de error de acceso remoto o Winerror.h.
Valor | Significado |
---|---|
|
El usuario no tiene privilegios correctos. Solo un administrador puede completar esta tarea. |
|
El nombre de entrada especificado en lpszEntry no existe. |
Comentarios
El código de ejemplo siguiente elimina la entrada de la libreta de teléfono especificada por la variable lpszEntry.
#include <stdio.h>
#include <windows.h>
#include "ras.h"
#include "strsafe.h"
#define PHONE_NUMBER_LENGTH 7
#define DEVICE_NAME_LENGTH 5
#define DEVICE_TYPE_LENGTH 5
DWORD __cdecl wmain(){
DWORD dwRet = ERROR_SUCCESS;
LPTSTR lpszEntry = L"RASEntryName";
LPTSTR lpszphonenumber = L"5555555";
LPTSTR lpszdevicename = L"Modem";
LPTSTR lpszdevicetype = RASDT_Modem;
// Allocate heap memory for the RASENTRY structure
LPRASENTRY lpentry = (LPRASENTRY)HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(RASENTRY));
if (lpentry == NULL){
printf("HeapAlloc failed");
return 0;
}
// The RASENTRY->dwSize member has to be initialized or the RRAS APIs will fail below.
lpentry->dwSize = sizeof(RASENTRY);
lpentry->dwFramingProtocol = RASFP_Ppp;
lpentry->dwfOptions = 0;
lpentry->dwType = RASET_Phone;
dwRet |= StringCchCopyN(lpentry->szLocalPhoneNumber, RAS_MaxPhoneNumber, lpszphonenumber, PHONE_NUMBER_LENGTH);
dwRet |= StringCchCopyN(lpentry->szDeviceName, RAS_MaxDeviceName, lpszdevicename, DEVICE_NAME_LENGTH);
dwRet |= StringCchCopyN(lpentry->szDeviceType, RAS_MaxDeviceType, lpszdevicetype, DEVICE_TYPE_LENGTH);
if (dwRet != ERROR_SUCCESS){
wprintf(L"RASENTRY structure initialization failed");
HeapFree(GetProcessHeap(), 0, lpentry);
return 0;
}
// Validate the new entry's name
dwRet = RasValidateEntryName(NULL, lpszEntry);
if (dwRet != ERROR_SUCCESS){
wprintf(L"RasValidateEntryName failed: Error = %d\n", dwRet);
HeapFree(GetProcessHeap(), 0, lpentry);
return 0;
}
// Create and set the new entry's properties
dwRet = RasSetEntryProperties(NULL, lpszEntry, lpentry, lpentry->dwSize, NULL, 0);
if (dwRet != ERROR_SUCCESS){
wprintf(L"RasSetEntryProperties failed: Error = %d\n", dwRet);
HeapFree(GetProcessHeap(), 0, lpentry);
return 0;
}
// Clean up: delete the new entry
dwRet = RasDeleteEntry(NULL, lpszEntry);
if (dwRet != ERROR_SUCCESS){
wprintf(L"RasDeleteEntry failed: Error = %d\n", dwRet);
}
HeapFree(GetProcessHeap(), 0, lpentry);
return 0;
}
Nota
El encabezado ras.h define RasDeleteEntry como alias que selecciona automáticamente la versión ANSI o Unicode de esta función en función de la definición de la constante de preprocesador UNICODE. La combinación del uso del alias neutro de codificación con código que no es neutral de codificación puede provocar discrepancias que dan lugar a errores de compilación o en tiempo de ejecución. Para obtener más información, vea Convenciones para prototipos de función.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows 2000 Professional [solo aplicaciones de escritorio] |
Servidor mínimo compatible | Windows 2000 Server [solo aplicaciones de escritorio] |
Plataforma de destino | Windows |
Encabezado | ras.h |
Library | Rasapi32.lib |
Archivo DLL | Rasapi32.dll |
Consulte también
Información general sobre el servicio de acceso remoto (RAS)