DDESetService( ) (Función)

Crea, libera o modifica nombres de servicio y configuraciones de DDE.

DDESetService(cServiceName, cOption [, cDataFormat | lExpression])

Valores devueltos

Logical

Parámetros

  • cServiceName
    Especifica el nombre de servicio que desea crear, liberar, modificar o del que hay que devolver información.

  • cOption
    Para crear, liberar o modificar un nombre de servicio o para devolver información acerca de un nombre de servicio. La tabla siguiente muestra las opciones que puede especificar con cOption, los valores predeterminados de las opciones y una descripción de cada opción.

    Opción Valor predeterminado Descripción
    DEFINE Crea un nuevo nombre de servicio.
    RELEASE Libera un nombre de servicio existente.
    ADVISE .F. Activa o desactiva la notificación al cliente de cambios en los nombres de elementos.
    EXECUTE .F. Activa o desactiva la ejecución de comandos.
    POKE .F. Activa o desactiva las consultas del cliente al servicio.
    REQUEST .T. Activa o desactiva las peticiones al nombre de servicio.
    FORMATS CF_TEXT Especifica los formatos de datos válidos.
  • DEFINE
    Crea un nuevo nombre de servicio. Por ejemplo, el comando siguiente crea el nombre de servicio myservice:

    glNewService = DDESetService('myservice', 'DEFINE')
    
  • RELEASE
    Libera un nombre de servicio existente para liberar recursos del sistema. Cuando se libera un nombre de servicio, también se liberan todos los nombres de tema del servicio.

    El comando siguiente libera el nombre de servicio creado en el ejemplo anterior:

    glRelease = DDESetService('myservice', 'RELEASE')
    

    Para liberar el servicio predeterminado de Visual FoxPro, ejecute este comando:

    glRelFox = DDESetService('FoxPro', 'RELEASE')
    
  • ADVISE
    Especifica si un cliente recibe una notificación cuando cambian los datos de un nombre de elemento o especifica la devolución del estado de notificación actual para un nombre de servicio. Consulte DDEAdvise( ) para ver información adicional acerca del envío de notificaciones a los clientes.

    Para permitir la notificación al cliente, especifique verdadero (.T.) para lExpression. Si especifica falso (.F.), lExpression desactivará la notificación al cliente.

    Para devolver el estado de notificación del cliente actual para el nombre de servicio, omita lExpression. DDESetService( ) devolverá verdadero si está activada la notificación al cliente para el nombre de servicio; devolverá falso si está desactivada la notificación al cliente.

  • EXECUTE
    Permite activar o desactivar las peticiones de ejecución de comandos a un nombre de servicio o determinar el estado de ejecución actual para un nombre de servicio.

    Para permitir que las peticiones de cliente ejecuten un comando, especifique verdadero (.T.) para lExpression. Si especifica falso (.F.) para lExpression se desactivarán las peticiones de cliente para que se ejecute un comando. .F. es el valor predeterminado.

    Para devolver el estado actual de ejecución de comandos para el nombre de servicio, omita lExpression. DDESetService( ) devolverá verdadero si están activadas las peticiones de ejecución de comandos del cliente para el nombre de servicio; de lo contrario, devolverá falso.

    Los comandos siguientes activan las peticiones de ejecución de comandos y desactivan las peticiones de datos de las aplicaciones cliente para el nombre de servicio myservice. Después se muestra el estado actual de ejecución de comandos para myservice:

    glExecute = DDESetService('myservice', 'EXECUTE', .T.)
    glRequest = DDESetService('myservice', 'REQUEST', .F.)
    ? DDESetService('myservice', 'EXECUTE')
    
  • POKE
    Permite activar o desactivar las peticiones de escritura en el nombre de servicio. También puede determinar el estado actual de escritura para un nombre de servicio. Consulte DDEPoke( ) para obtener información adicional acerca de la función de escritura en los datos de un servidor o de un cliente.

    Para activar las peticiones de escritura de un cliente, especifique verdadero (.T.) para lExpression. Si especifica falso (.F.) para lExpression, se desactivarán las peticiones de escritura del cliente. .F. es el valor predeterminado.

    Para devolver el estado de escritura actual del nombre de servicio, omita lExpression. DDESetService( ) devolverá verdadero si las peticiones de escritura están activadas para un nombre de servicio; devolverá falso si las peticiones de escritura están desactivadas.

  • REQUEST
    Utilice REQUEST para activar o desactivar las peticiones del cliente para un nombre de servicio o para devolver el estado actual de petición del nombre de servicio.

    Para activar las peticiones del cliente al nombre de servicio, especifique verdadero (.T.) para lExpression. Si especifica falso (.F.), se desactivarán las peticiones del cliente al nombre del servicio. El valor predeterminado es .T.

    Para devolver el estado actual de petición de un nombre de servicio, omita lExpression. DDESetService( ) devolverá verdadero si están activadas las peticiones del cliente para el nombre de servicio; devolverá falso si las peticiones de cliente están desactivadas.

    Los comandos siguientes desactivan las peticiones de las aplicaciones cliente al nombre de servicio myservice y muestran el estado actual de petición para myservice:

    glRequest = DDESetService('myservice', 'REQUEST', .F.)
    ? DDESetService('myservice', 'REQUEST')
    
  • FORMATS [cDataFormat]
    Especifica los formatos de datos que admite el nombre del servicio. Las peticiones que realice el servidor para formatos no especificados con cDataFormat se rechazarán. Al especificar formatos de datos, incluya una lista de los formatos admitidos separados por comas. Por ejemplo:

    =DDESetService('myservice', 'FORMATS', 'CF_TEXT, CF_SYLK')
    

    Si omite cDataFormat, únicamente se admitirá el formato CF_TEXT.

  • lExpression
    Especifica el estado de las opciones REQUEST, EXECUTE, POKE, o ADVISE. Especifique verdadero (.T.) para lExpression si desea activar la opción o falso (.F.) si desea desactivarla.

Observaciones

Visual FoxPro puede actuar como servidor de intercambio dinámico de datos (DDE) para enviar datos a aplicaciones cliente basadas en Microsoft Windows. DDESetService( ) se utiliza para crear, liberar o modificar nombres de servicio y configuraciones de Visual FoxPro. Cada nombre de servicio puede tener una serie de nombres de tema creados mediante DDESetTopic( ). Las aplicaciones cliente piden datos de los nombres de tema DDE.

DDESetService( ) devuelve verdadero (.T.) si el nombre de servicio logra crearse, liberarse o modificarse. Si el nombre de servicio no se puede crear, liberar o modificar DDESetService( ) devolverá falso (.F.).

DDESetService( ) puede utilizarse también para devolver información acerca de un nombre de servicio. Visual FoxPro tiene el nombre de servicio predeterminado Visual FoxPro. El nombre de servicio Visual FoxPro tiene un nombre de tema llamado System. La tabla siguiente muestra todos los nombres de elemento que admite el tema System.

Nombre de elemento Elemento
Topics Lista de los nombres de temas disponibles
Formats Lista de formatos admitidos
Status Busy (ocupado) o Ready (preparado)
SysItems Lista de nombres de elementos

Puede utilizar DDESetTopic( ) para modificar el nombre de servicio Visual FoxPro o para liberarlo. Para obtener información acerca de la manipulación de nombres de servicio Visual FoxPro, vea las opciones de DDESetTopic( ).

Vea también

DDEEnabled( ) | DDELastError( ) | DDEPoke( ) | DDESetTopic( )