Función OleUIPasteSpecialA (oledlg.h)

Invoca el cuadro de diálogo Pegar especial estándar, lo que permite al usuario seleccionar el formato del objeto del Portapapeles que se va a pegar o pegar.

Sintaxis

UINT OleUIPasteSpecialA(
  [in] LPOLEUIPASTESPECIALA unnamedParam1
);

Parámetros

[in] unnamedParam1

Puntero a una estructura OLEUIPASTESPECIAL .

Valor devuelto

Definiciones de errores o correctos estándar

Código devuelto Descripción
OLEUI_FALSE
Error desconocido (sin usar).
OLEUI_OK
El usuario ha presionado el botón Aceptar.
OLEUI_SUCCESS
No hay ningún error, igual que OLEUI_OK.
OLEUI_CANCEL
El usuario presionó el botón Cancelar.
 

Errores de validación de campos estándar

Código devuelto Descripción
OLEUI_ERR_STANDARDMIN
Los errores comunes a todos los cuadros de diálogo se encuentran en el intervalo OLEUI_ERR_STANDARDMIN a OLEUI_ERR_STANDARDMAX. Este valor permite a la aplicación probar los mensajes estándar para mostrar los mensajes de error al usuario.
OLEUI_ERR_STRUCTURENULL
El puntero a una estructura OLEUIXXX pasada a la función era NULL.
OLEUI_ERR_STRUCTUREINVALID
Permisos insuficientes para el acceso de lectura o escritura a una estructura OLEUIXXX.
OLEUI_ERR_CBSTRUCTINCORRECT
El valor cbstruct es incorrecto.
OLEUI_ERR_HWNDOWNERINVALID
El valor hWndOwner no es válido.
OLEUI_ERR_LPSZCAPTIONINVALID
El valor lpszCaption no es válido.
OLEUI_ERR_LPFNHOOKINVALID
El valor de lpfnHook no es válido.
OLEUI_ERR_HINSTANCEINVALID
El valor hInstance no es válido.
OLEUI_ERR_LPSZTEMPLATEINVALID
El valor lpszTemplate no es válido.
OLEUI_ERR_HRESOURCEINVALID
El valor hResource no es válido.
 

Errores de inicialización

Código devuelto Descripción
OLEUI_ERR_FINDTEMPLATEFAILURE
No se encuentra la plantilla del cuadro de diálogo.
OLEUI_ERR_LOADTEMPLATEFAILURE
No se puede cargar la plantilla del cuadro de diálogo.
OLEUI_ERR_DIALOGFAILURE
Error de inicialización del cuadro de diálogo.
OLEUI_ERR_LOCALMEMALLOC
Error en una llamada a LocalAlloc o al asignador IMalloc estándar.
OLEUI_ERR_GLOBALMEMALLOC
Error en una llamada a GlobalAlloc o al asignador IMalloc estándar.
OLEUI_ERR_LOADSTRING
No se puede llamar a LoadString para obtener recursos localizados de la biblioteca.
OLEUI_ERR_OLEMEMALLOC
Error en una llamada al asignador IMalloc estándar.
 

Errores específicos de la función

Código devuelto Descripción
OLEUI_ERR_STANDARDMAX
Los errores comunes a todos los cuadros de diálogo se encuentran en el intervalo OLEUI_ERR_STANDARDMIN a OLEUI_ERR_STANDARDMAX. Este valor permite a la aplicación probar los mensajes estándar para mostrar los mensajes de error al usuario.
OLEUI_IOERR_SRCDATAOBJECTINVALID
El miembro lpSrcDataObject de OLEUIPASTESPECIAL no es válido.
OLEUI_IOERR_ARRPASTEENTRIESINVALID
El miembro arrPasteEntries de OLEUIPASTESPECIAL no es válido.
OLEUI_IOERR_ARRLINKTYPESINVALID
El miembro arrLinkTypes de OLEUIPASTESPECIAL no es válido.
OLEUI_PSERR_CLIPBOARDCHANGED
El contenido del Portapapeles cambió mientras se mostraba el cuadro de diálogo.
OLEUI_PSERR_GETCLIPBOAARDFAILED

El miembro lpSrcDataObj es incorrecto.

Comentarios

El diseño del cuadro de diálogo Pegar especial supone que si está dispuesto a permitir que un usuario se vincule a un objeto, también está dispuesto a permitir que el usuario inserte ese objeto. Por este motivo, si se establece alguna de las marcas de OLEUIPASTE_LINKTYPE asociadas a la enumeración OLEUIPASTEFLAG , también se debe establecer la marca OLEUIPASTE_PASTE para que los formatos de datos aparezcan en el cuadro de diálogo Pegar especial .

El texto que se muestra en el campo Origen del cuadro de diálogo Pegar especial estándar, que se implementa en Oledlg32.dll, es la cadena terminada en null cuyo desplazamiento en bytes se especifica en el miembro dwSrcofCopy de la estructura OBJECTDESCRIPTOR del objeto que se va a pegar. Si una estructura OBJECTDESCRIPTOR no está disponible para este objeto, el cuadro de diálogo muestra cualquier texto asociado a CF_LINKSOURCEDESCRIPTOR. Si ninguna estructura está disponible, el cuadro de diálogo busca CF_FILENAME. Si no se encuentra CF_FILENAME, el cuadro de diálogo muestra la cadena "Origen desconocido".

Para liberar un HMETAFILEPICT devuelto desde el cuadro de diálogo Insertar objeto o Pegar especial , elimine el metarchivo adjunto en el identificador, como se indica a continuación.

 
void FreeHmetafilepict(HMETAFILEPICT hmfp) 
{ 
    if (hmfp != NULL) 
        { 
        LPMETAFILEPICT pmfp = GlobalLock(hmfp); 
 
        DeleteMetaFile(pmfp->hMF); 
        GlobalUnlock(hmfp); 
        GlobalFree(hmfp); 
        } 
    else
        {
        // Handle null pointers here.
        exit(0);
        }
}  // FreeHmetafilepict 

Nota

El encabezado oledlg.h define OLEUIPASTESPECIAL 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 neutral de codificación con código que no es neutral de codificación puede dar lugar a errores de coincidencia que dan lugar a errores de compilación o 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 oledlg.h
Library OleDlg.lib
Archivo DLL OleDlg.dll

Consulte también

OLEUIPASTEFLAG