Errores mas tipicos con netduino plus


Recordar los códigos numéricos de error es una labor muy ardua. Si el código de manejo de errores está bien documentada, las revisiones de código puede  tomar más tiempo y encima el mantenimiento sera más difícil, ya que puede que tenga que consultar los manuales de referencia, los archivos nativos de código de la cabecera o la ayuda en línea con frecuencia.

Como ejemplo ¿quien no ha encontrado este error?

Exception System.Net.Sockets.SocketException – CLR_E_FAIL (1)

Message:

Microsoft.SPOT.Net.SocketNative::send [IP: 0000]

System.Net.Sockets.Socket::Send [IP: 0018]

System.Net.Sockets.Socket::Send [IP: 0010]

LightSwitch::SendRequest [IP: 0066]

LightSwitch::Main [IP: 0177]

SocketException ErrorCode = 10060

SocketException ErrorCode = 10060

Excepción del tipo ‘System.Net.Sockets.SocketException’ en Microsoft.SPOT.Net.dll

SocketException ErrorCode = 10060

SocketException ErrorCode = 10060

Los errores de socket  pues son particularmente difíciles de recordar y también de entender . Para ayudar en esta tarea,  se han recogido de Windows Sockets los códigos de error en un par de enumeraciones.

La primera enumeración, SocketErrorCodes utiliza descripciones  basadas en el artículo de soporte técnico de Microsoft. Para obtener una descripción detallada de los códigos de error, por favor consulte este artículo o una referencia de Windows Sockets.

    InterruptedFunctionCall         = 10004
    PermissionDenied                = 10013
    BadAddress                      = 10014
    InvalidArgument                 = 10022
    TooManyOpenFiles                = 10024
    ResourceTemporarilyUnavailable  = 10035
    OperationNowInProgress          = 10036
    OperationAlreadyInProgress      = 10037
    SocketOperationOnNonSocket      = 10038
    DestinationAddressRequired      = 10039
    MessgeTooLong                   = 10040
    WrongProtocolType               = 10041
    BadProtocolOption               = 10042
    ProtocolNotSupported            = 10043
    SocketTypeNotSupported          = 10044
    OperationNotSupported           = 10045
    ProtocolFamilyNotSupported      = 10046
    AddressFamilyNotSupported       = 10047
    AddressInUse                    = 10048
    AddressNotAvailable             = 10049
    NetworkIsDown                   = 10050
    NetworkIsUnreachable            = 10051
    NetworkReset                    = 10052
    ConnectionAborted               = 10053
    ConnectionResetByPeer           = 10054
    NoBufferSpaceAvailable          = 10055,
    AlreadyConnected                = 10056
    NotConnected                    = 10057
    CannotSendAfterShutdown         = 10058
    ConnectionTimedOut              = 10060
    ConnectionRefused               = 10061
    HostIsDown                      = 10064
    HostUnreachable                 = 10065
    TooManyProcesses                = 10067
    NetworkSubsystemIsUnavailable   = 10091
    UnsupportedVersion              = 10092
    NotInitialized                  = 10093
    ShutdownInProgress              = 10101
    ClassTypeNotFound               = 10109
    HostNotFound                    = 11001
    HostNotFoundTryAgain            = 11002
    NonRecoverableError             = 11003
    NoDataOfRequestedType           = 11004

El segundo, WinSockErrorCodes, utiliza los nombres simbólicos que se ve en código nativo de aplicaciones de WinSock.

    WSAEINTR           = 10004
    WSAEACCES          = 10013
    WSAEFAULT          = 10014
    WSAEINVAL          = 10022
    WSAEMFILE          = 10024
    WSAEWOULDBLOCK     = 10035
    WSAEINPROGRESS     = 10036
    WSAEALREADY        = 10037
    WSAENOTSOCK        = 10038
    WSAEDESTADDRREQ    = 10039
    WSAEMSGSIZE        = 10040
    WSAEPROTOTYPE      = 10041
    WSAENOPROTOOPT     = 10042
    WSAEPROTONOSUPPORT = 10043
    WSAESOCKTNOSUPPORT = 10044
    WSAEOPNOTSUPP      = 10045
    WSAEPFNOSUPPORT    = 10046
    WSAEAFNOSUPPORT    = 10047
    WSAEADDRINUSE      = 10048
    WSAEADDRNOTAVAIL   = 10049
    WSAENETDOWN        = 10050
    WSAENETUNREACH     = 10051
    WSAENETRESET       = 10052
    WSAECONNABORTED    = 10053
    WSAECONNRESET      = 10054
    WSAENOBUFS         = 10055
    WSAEISCONN         = 10056
    WSAENOTCONN        = 10057
    WSAESHUTDOWN       = 10058
    WSAETIMEDOUT       = 10060
    WSAECONNREFUSED    = 10061
    WSAEHOSTDOWN       = 10064
    WSAEHOSTUNREACH    = 10065
    WSAEPROCLIM        = 10067
    WSASYSNOTREADY     = 10091
    WSAVERNOTSUPPORTED = 10092
    WSANOTINITIALIZED  = 10093
    WSAEDISCON         = 10101
    WSATYPE_NOT_FOUND  = 10109
    WSAHOST_NOT_FOUND  = 11001
    WSATRY_AGAIN       = 11002
    WSANO_RECOVERY     = 11003
    WSANO_DATA         = 11004
Me parece la enumeración descriptiva (SocketErrorCodes) más útil cuando estoy escribiendo un nuevo código. La enumeración es muy útil cuando WinSockErrorCodes porta código nativo.NET. Con cualquiera de enumeración, simplemente nos  puede echar la Int32 enSocketException.ErrorCodees muy util  utilizando  la enumeración adecuada para que el código sea más fácil de leer y mantener.
Por ejemplo:

try
{
    // code that causes a SocketException
}
catch(SocketException se)
{
    SocketErrorCodes errorCode = (SocketErrorCodes)se.ErrorCode;

    switch(errorCode)
    {
        case SocketErrorCodes.PermissionDenied:
            // error handling
            break;

        case SocketErrorCodes.AddressInUse:
            // error handling
            break;

        // etc..
    }
}

Como se mencionó anteriormente, los datos utilizados para crear las enumeraciones anteriores se pueden encontrar aquí.  En caso de duda, consulte el artículo de soporte o de referencia de WindowsSockets.

A continuación, traducida al español , se detallan la  descripción de los errores  :

WSAEINTR (10004)
Traducción: llamada a la función interrumpida.
Descripción: Una operación de bloqueo fue interrumpida por una llamada a WSACancelBlockingCall (Wsapiref_704y.asp).

WSAEACCES (10013)
Traducción: Permiso denegado.
Descripción: Se ha intentado acceder a una toma de una manera que es prohibida por sus permisos de acceso. Por ejemplo, este error se produce cuando una dirección de difusión se utiliza para sendto, pero el permiso de emisión no se establece mediante setsockopt (SO_BROADCAST). Otra posible razón para el error WSAEACCES es que cuando el enlace (Wsapiref_6vzm.asp) se llama (en Microsoft Windows NT 0.0 Service Pack 4 4 [SP4] o posterior), con otro programa, servicio o un controlador en modo kernel está obligado a la misma dirección con acceso exclusivo. Acceso exclusivo como es una nueva característica de Windows NT 4.0 SP4 y posterior, y se implementa mediante el uso de la opción SO_EXCLUSIVEADDRUSE.

WSAEFAULT (10014)
Traducción: dirección errónea.
Descripción: El sistema detectó una dirección de puntero no válido al intentar utilizar un argumento puntero de una llamada. Este error se produce si un programa pasa un valor de puntero no válido o si el tamaño del buffer es demasiado pequeño. Por ejemplo, este problema se produce si la longitud de un argumento que es una estructura SOCKADDR es menor que el sizeof (sockaddr) valor.

WSAEINVAL (10022)
Traducción: Argumento no válido.
Descripción: un argumento no válido (por ejemplo, un argumento que especifique un nivel no válido) se suministra a la setsockopt (Wsapiref_94aa.asp) función. A veces, también se refiere al estado actual de las tomas, por ejemplo, llamando a aceptar (Wsapiref_13aq.asp) en un socket que no está escuchando.

WSAEMFILE (10024)
Traducción: Hay demasiados archivos abiertos.
Descripción: Hay demasiados sockets abiertos. Cada aplicación puede tener un número máximo de identificadores de socket disponibles. Estos mangos pueden estar disponibles a nivel mundial, por proceso, o por hilo.

WSAEWOULDBLOCK (10035)
Traducción: Recurso temporalmente no disponible.
Descripción: Este error se origina a partir de las operaciones de tomas de corriente sin bloqueo que no se puede completar de inmediato, por ejemplo, recv (Wsapiref_2i9e.asp), cuando no hay datos en la cola para ser leído de la toma. Se trata de un error fatal, y la operación se puede intentar más tarde. WSAEWOULDBLOCK se expresa en el resultado de la llamada connect (Wsapiref_8m7m.asp) en un socket SOCK_STREAM sin bloqueo por algún tiempo debe transcurrir para que la conexión sea establecida.

WSAEINPROGRESS (10036)
Traducción: Operación en curso.
Descripción: Una operación de bloqueo se está ejecutando actualmente. Windows Sockets sólo permite una única operación de bloqueo para cada tarea o para cada hilo a ser excepcional. Si cualquier otra llamada a la función se hace (si es que las referencias o cualquier otro conector), la función falla con el error WSAEINPROGRESS.

WSAEALREADY (10037)
Traducción: Operación en curso.
Descripción: Una operación es tratado en un socket de no bloqueo cuando una operación está en curso. Por ejemplo, llamando a connect (Wsapiref_8m7m.asp) es tratado por segunda vez en un socket de no bloqueo que ya se conecta o una solicitud asincrónica (WSAAsyncGetXbyY) se pretende que ya ha sido cancelado o terminado.

WSAENOTSOCK (10038)
Traducción: operación de socket en nonsocket.
Descripción: La operación fue juzgado por algo que no es un socket. El parámetro identificador de socket no hizo referencia a un socket válido, o para seleccionar (Wsapiref_1ab6.asp), un miembro de un fd_set no era válida.

WSAEDESTADDRREQ (10039)
Traducción: Dirección de destino requerido.
Descripción: una dirección necesaria fue omitida en una operación en un socket. Por ejemplo, este error se devuelve si sendto (Wsapiref_4sqa.asp) se llama con la dirección remota del ADDR_ANY.

WSAEMSGSIZE (10040)
Traducción: Mensaje demasiado largo.
Descripción: Un mensaje que se envía en un socket de datagrama era más grande que el búfer de mensaje interno o algún límite de la red, o el buffer que se utiliza para recibir un datagrama era más pequeño que el datagrama.

WSAEPROTOTYPE (10041)
Traducción: Tipo de protocolo incorrecto para el socket.
Descripción: Un protocolo que se especifica en el zócalo (Wsapiref_2qr6.asp) llamada a la función no es compatible con la semántica del tipo de socket que se solicita. Por ejemplo, la ARPA Internet el protocolo UDP no se pueden especificar con un tipo de socket de SOCK_STREAM.

WSAENOPROTOOPT (10042)
Traducción: opción de protocolo mal.
Descripción: Una opción desconocido, no válido o no compatible o nivel especificado en un getsockopt (Wsapiref_8qcy.asp) llamada o una llamada setsockopt (Wsapiref_94aa.asp).

WSAEPROTONOSUPPORT (10043)
Traducción: el Protocolo no es compatible.
Descripción: El protocolo solicitado o no se ha configurado en el sistema o no la aplicación de su existencia. Por ejemplo, una toma de corriente (Wsapiref_2qr6.asp) llame solicita un socket SOCK_DGRAM, pero especifica un protocolo de secuencia.

WSAESOCKTNOSUPPORT (10044)
Traducción: tipo de socket no es compatible.
Descripción: El soporte para el tipo de socket especificado no existe en esta familia de direcciones. Por ejemplo, el tipo SOCK_RAW opcional se puede seleccionar en un zócalo (Wsapiref_2qr6.asp) llamada, pero la aplicación no es compatible con sockets SOCK_RAW en absoluto.

WSAEOPNOTSUPP (10045)
Traducción: La operación no es compatible.
Descripción: La operación que se intentó no es compatible con el tipo de objeto que se hace referencia. Este error se produce normalmente cuando un descriptor de socket a un socket que no puede apoyar esta operación es tratar de aceptar una conexión en un socket de datagramas.

WSAEPFNOSUPPORT (10046)
Traducción: La familia de protocolo no es compatible.
Descripción: La familia de protocolos no se ha configurado en el sistema o no la aplicación de su existencia. Este mensaje tiene un significado ligeramente diferente de WSAEAFNOSUPPORT. Sin embargo, es con frecuencia intercambiables. Todas las funciones de Windows Sockets que el regreso de uno de estos mensajes también se especifica WSAEAFNOSUPPORT.

WSAEAFNOSUPPORT (10047)
Traducción: Familia de direcciones no es compatible con el protocolo de la familia.
Descripción: Una dirección que no es compatible con el protocolo solicitado se utilizó. Todas las tomas se crean con una familia de direcciones asociadas (es decir, AF_INET para protocolos de Internet) y un tipo de protocolo genérico (es decir, SOCK_STREAM). Este error se devuelve si un protocolo incorrecto que se solicite expresamente en el zócalo (Wsapiref_2qr6.asp) llamada o si la dirección de la familia equivocada se utiliza para una toma, por ejemplo, en sendto (Wsapiref_4sqa.asp).

WSAEADDRINUSE (10048)
Traducción: La dirección ya está en uso.
Descripción: Por lo general, sólo un uso de cada dirección de socket (protocolo / dirección IP / puerto). Este error se produce si un programa intenta establecer un enlace (Wsapiref_6vzm.asp) un socket a una dirección IP o el puerto que ya se ha utilizado para un socket existente, un enchufe que no se ha cerrado correctamente, o en una toma que se encuentra todavía en el proceso de cierre. Para los programas de servidor que tienen que unirse enchufes múltiples, el número de puerto mismo, considere el uso setsockopt (Wsapiref_94aa.asp) (SO_REUSEADDR). Los programas cliente normalmente no tiene que llamar a unirse a todos, connect (Wsapiref_8m7m.asp) elige un puerto no utilizado de forma automática. Cuando un enlace se denomina una dirección comodín (que implica ADDR_ANY), un error de WSAEADDRINUSE puede demorarse hasta que la dirección específica se ha comprometido. Esto puede ocurrir con una llamada a otra función que se produce más tarde, como conectarse, escuchar, WSAConnect o WSAJoinLeaf.

WSAEADDRNOTAVAIL (10049)
Traducción: No se puede asignar la dirección solicitada.
Descripción: La dirección solicitada no es válida en su contexto. Este error se debe normalmente a partir de un intento de atar (Wsapiref_6vzm.asp) a una dirección que no es válido para el equipo local. Este error también puede deberse a conectar (Wsapiref_8m7m.asp), sendto (Wsapiref_4sqa.asp), WSAConnect (Wsapiref_8kc2.asp), WSAJoinLeaf (Wsapiref_7dv6.asp), o WSASendTo (Wsapiref_752q.asp) cuando la dirección a distancia o el puerto no es válido para un equipo remoto (por ejemplo, la dirección o el puerto 0).

WSAENETDOWN (10050)
Traducción: La red está abajo.
Descripción: una operación de socket encuentra una red de muertos. Este error puede indicar un fallo grave del sistema de red (es decir, la pila de protocolos que la DLL de Windows Sockets va más), la interfaz de red o la red local.

WSAENETUNREACH (10051)
Traducción: red es inalcanzable.
Descripción: una operación de socket se trató de una red inalcanzable. Este error normalmente significa que el software local no conoce la ruta para llegar a la máquina remota.

WSAENETRESET (10052)
Traducción: Red cayó la conexión en Restablecer.
Descripción: La conexión se ha roto debido a de mantenimiento de la actividad que se detecta un fallo, mientras que la operación estaba en marcha. También puede ser devuelto por setsockopt (Wsapiref_94aa.asp) si se hace un intento para establecer SO_KEEPALIVE en una conexión que ya ha fracasado.

WSAECONNABORTED (10053)
Traducción: Software causado anulación de la conexión.
Descripción: Una conexión establecida fue detenido por el software en el ordenador host, posiblemente debido a una transmisión de datos de tiempo de espera o error de protocolo.

WSAECONNRESET (10054)
Traducción: Connection reset by peer.
Descripción: Una conexión existente fue cerrada por la fuerza por el host remoto. Este error se produce si el programa de pares en el host remoto se detuvo de repente, se reinicia el host o el host remoto utiliza un cierre duro. Ver setsockopt (Wsapiref_94aa.asp) para obtener más información acerca de la opción SO_LINGER en el socket remoto. Este error también puede producirse si una conexión se interrumpió a causa de keep-alive actividad que detecta un fallo, mientras que una o más operaciones en curso. Las operaciones que se estaban realizando no con WSAENETRESET. Las operaciones posteriores no con WSAECONNRESET.

WSAENOBUFS (10055)
Traducción: No hay espacio en búfer disponible.
Descripción: Una operación en un socket no se puede realizar porque el sistema carecía de suficiente espacio de búfer o porque una cola estaba llena.

WSAEISCONN (10056)
Traducción: socket ya está conectado.
Descripción: A petición de conexión se hizo sobre un conector ya conectado. Algunas implementaciones también devuelven este error si sendto (Wsapiref_4sqa.asp) se llama en un socket SOCK_DGRAM conectado (para SOCK_STREAM, el parámetro que en sendto (Wsapiref_4sqa.asp) se pasa por alto), aunque otras implementaciones tratar esto como un hecho válido.

WSAENOTCONN (10057)
Traducción: Socket no está conectado.
Descripción: una solicitud para enviar o recibir datos, no está permitido porque el socket no está conectado y (cuando se envía en un socket de datagramas con sendto [Wsapiref_4sqa.asp], sin dirección fue suministrada). Cualquier otro tipo de operación también se puede devolver este error, por ejemplo, setsockopt (Wsapiref_94aa.asp) SO_KEEPALIVE establecer si la conexión se ha restablecido.

WSAESHUTDOWN (10058)
Traducción: no se puede enviar después de cerrar el socket.
Descripción: una solicitud para enviar o recibir datos no se le permitió porque el socket ya había sido clausurado en esa dirección con el cierre anterior (Wsapiref_60z6.asp) llamada.Cuando el cierre se llama, un cierre parcial de una hembra se solicita. Esta es una señal de que los procesos de envío o recepción (o ambos) han sido descontinuados.

WSAETIMEDOUT (10060)
Traducción: Connection timed out.
Descripción: Un intento de conexión porque la parte conectada no responder correctamente después de un período de tiempo, o no la conexión establecida ya que el host conectado no ha respondido.

WSAECONNREFUSED (10061)
Traducción: Conexión rechazada.
Descripción: No hay conexión se puede hacer porque el equipo de destino activa se niega.Este error se debe normalmente al tratar de conectarse a un servicio que está inactiva en el sistema exterior, es decir, que no tiene un programa de servidor que ejecuta.

WSAEHOSTDOWN (10064)
Traducción: host no funciona.
Descripción: una operación de socket ha fallado porque el host de destino es hacia abajo. Una operación socket encontró una gran cantidad muertos. Actividad de red en el host local no se ha iniciado. Estas condiciones tienen más probabilidades de ser indicado por el WSAETIMEDOUT error.

WSAEHOSTUNREACH (10065)
Traducción: No route to host.
Descripción: una operación de socket se trató de un host inalcanzable. Ver WSAENETUNREACH.

WSAEPROCLIM (10067)
Traducción: Demasiados procesos.
Descripción: Una implementación de Windows Sockets puede tener un límite en el número de programas que puede utilizar al mismo tiempo. WSAStartup (Wsapiref_1v8y.asp) puede fallar con este error si el límite se ha alcanzado.

WSASYSNOTREADY (10091)
Traducción: El subsistema de red no está disponible.
Descripción: Este error es devuelto por WSAStartup (Wsapiref_1v8y.asp) si la implementación de Windows Sockets que actualmente no puede funcionar porque el sistema subyacente que utiliza para proporcionar servicios de red no está disponible actualmente. Confirme lo siguiente:
Confirme que el archivo DLL de Windows adecuadas Sockets está en la ruta actual.
Confirmar que no están tratando de utilizar más de una implementación de Windows Sockets, al mismo tiempo.
Si hay más de un archivo DLL de Winsock en el sistema, confirman que el primer archivo DLL de Winsock en el camino apropiado para el subsistema de red cargados.
Confirme que todos los componentes necesarios están instalados y configurados correctamente de acuerdo a la documentación implementación de Windows Sockets.

WSAVERNOTSUPPORTED (10092)
Traducción: Versión Winsock.dll fuera de rango.
Descripción: La implementación actual de Windows Sockets no es compatible con la versión de Windows Sockets especificación solicitada por el programa. Asegúrese de que no viejos archivos de Windows Sockets DLL se está accediendo.

WSANOTINITIALISED (10093)
Traducción: WSAStartup éxito aún no cumplida.
Descripción: Ya sea que el programa no ha llamado WSAStartup (Wsapiref_1v8y.asp) o WSAStartup (Wsapiref_1v8y.asp) ha fallado. El programa se puede acceder a un socket que la tarea activa actual no es el propietario (es decir, se trata de compartir un socket entre tareas), o WSACleanup ha sido llamado muchas veces.

WSAEDISCON (10101)
Traducción: Cierre normal en curso.
Descripción: Este error es devuelto por WSARecv (Wsapiref_4z1u.asp) y WSARecvFrom (Wsapiref_4wky.asp) para indicar que la parte remota ha iniciado una secuencia de apagado correcto.

WSATYPE_NOT_FOUND (10109)
Traducción: tipo de clase que no se encuentra.
Descripción: La clase especificada no se encontró.

WSAHOST_NOT_FOUND (11001)
Traducción: Host no encontrado. No host es desconocido.
Descripción: El nombre no es un nombre de host oficial o alias, o no se puede encontrar en las bases de datos que se va a consultar. Este error también puede ser devuelto para las consultas de protocolo y el servicio, y eso significa que el nombre especificado no se puede encontrar en la base de datos pertinente.

WSATRY_AGAIN (11002)
Traducción: host no autoritaria que no se encuentra.
Descripción: Este error suele ser un error temporal en la resolución de nombres, y significa que el servidor local no recibió una respuesta de un servidor autorizado. Una de nuevo en algún momento posterior pueden tener éxito.

WSANO_RECOVERY (11003)
Traducción: Este es un error irrecuperable.
Descripción: Este error indica que algún tipo de error no recuperable se produjo durante una búsqueda de base de datos. Este error puede producirse si los archivos de base de datos (por ejemplo, BSD compatible con servidores, servicios, o los archivos PROTOCOLOS) no se encuentra o si una petición DNS fue devuelta por el servidor con un error grave.

WSANO_DATA (11004)
Traducción: nombre válido, no hay registro de datos del tipo solicitado.
Descripción: El nombre solicitado es válido y se encuentra en la base de datos, pero no tiene los datos correctos asociados que se está resolviendo para. El ejemplo típico de esto es un nombre de host a dirección de intento de traducción (mediante gethostbyname [Wsapiref_0q5u.asp] o WSAAsyncGetHostByName [Wsapiref_7bhu.asp]) que utiliza el servidor DNS. Un registro MX es devuelto, pero no un registro. Esto indica que el mismo host existe, pero no es directamente accesible.

WSA_INVALID_HANDLE (sistema operativo dependiente)
Traducción: identificador especificado objeto de evento no es válido.
Descripción: Es un programa intentó utilizar un objeto de evento, pero el identificador especificado no es válido.

WSA_INVALID_PARAMETER (depende del sistema operativo)
Traducción: Uno o más parámetros no son válidos.
Descripción: El programa utiliza una función de Windows Sockets que asigna directamente a una función de Win32. La función de Win32 indica un problema con uno o más parámetros.

WSA_IO_INCOMPLETE (sistema operativo dependiente)
Traducción: No E / S superpuesta objeto evento en estado señalado.
Descripción: El programa ha tratado de determinar el estado de una operación superpuesta que no se ha completado. Los programas que utilizan WSAGetOverlappedResult (con la bandera fwait establece en FALSE) en un modo de sondeo para determinar cuándo una operación superpuesta ha completado Este código de error hasta que se complete la operación.

WSA_IO_PENDING (sistema operativo dependiente)
Traducción: operaciones superpuestas se completa más tarde.
Descripción: El programa ha iniciado una operación superpuesta que no se puede realizar inmediatamente. Una indicación de finalización se envía después, cuando la operación se ha completado.

WSA_NOT_ENOUGH_MEMORY (sistema operativo dependiente)
Traducción: Insuficiente memoria disponible.
Descripción: El programa utiliza una función de Windows Sockets que asigna directamente a una función de Win32. La función de Win32 indica una falta de recursos de memoria necesaria.

WSA_OPERATION_ABORTED (sistema operativo dependiente)
Traducción: operación superpuesta abortado.
Descripción: una operación superpuesta fue cancelado debido a la toma y el cierre o el comando SIO_FLUSH en WSAIoctl (Wsapiref_6ik2.asp) se corrió.

WSAINVALIDPROCTABLE (sistema operativo dependiente)
Traducción: la tabla de procedimiento no válido de proveedor de servicios.
Descripción: Un proveedor de servicio ha devuelto un cuadro de procedimiento no válido para Ws2_32.dll. (Esto es causado por uno o más de los punteros siendo nulo.)

WSAINVALIDPROVIDER (sistema operativo dependiente)
Traducción: el proveedor de servicio no válido número de versión.
Descripción: Un proveedor de servicio ha devuelto un número de versión distinto 2.0.

WSAPROVIDERFAILEDINIT (sistema operativo dependiente)
Traducción: No se puede inicializar un proveedor de servicios.
Descripción: De cualquier DLL del proveedor de servicios no se pueden cargar (Error de LoadLibrary) o no WSPStartup del proveedor / función NSPStartup.

WSASYSCALLFAILURE (sistema operativo dependiente)
Traducción: Error del sistema de llamadas.
Descripción: Este error se devuelve cuando una llamada al sistema que nunca debe dejar de falla. Por ejemplo, este error se produce si la llamada a WaitForMultipleObjects falla o una de las funciones del registro no tratar de cambiar el protocolo o los catálogos de espacio de nombre.

Anuncio publicitario

Plataforma Netduino plus


Carastericticas de la placa

● all 20 digital and analog pins: GPIO
● digital pins 0-1: UART 1 RX, TX
● digital pins 2-3: UART 2 RX, TX
● digital pins 5-6: PWM, PWM
● digital pins 7-8: UART 2 RTS, CTS
● digital pins 9-10: PWM, PWM
● digital pins 11-13: SPI MOSI, MISO, SPCK
● analog pins 4-5: I2C SDA, SCL

Red

● ethernet: 100 mbps
● network stack: lwIP

Almacenamiento

● micro sd (up to 2 GB)
● auto card detect

Netduino es una nueva plataforma abierta  basada en  Microsoft.NET Micro Framework. La versión  Netduino Plus ademas  es un poderoso Netduino junto con Ethernet integrado, así como el apoyo de una ranura para microSD en la misma tarjeta

Cuenta con un  potente microcontrolador de 32 bits integrado con un entorno de desarrollo estándar que está disponible gratuitamente a través de Microsoft (Visual Studio 2010).

La plataforma permite una fácil interconexión con switches, sensores, LEDs, dispositivos de serie, y mucho más. El Netduino combina 20 GPIO con SPI, I2C, UART 2 (1 RTS / CTS), 4 y 6canales de PWM ADC.

Microsoft. NET Micro Framework combina la facilidad de un lenguaje de programación de alto nivel (C #) con las características de los microcontroladores.

Disfrute de la depuración de programación basada en eventos, multi-threading, línea por línea,puntos de interrupción y mucho más!

Ademas se pueden añadir  mas accesorios ofreciendo estos una funcionalidades extra ( por ejemplo la ubicación GPS, el control de servos ,displays  de todo tipo).

Netduino es ademas   compatible pin a pin con la plataforma Arduino.

Para comenzar con el desarrollo Netduino debemos  instalar el siguiente software gratuito.

Recomiendo que instale todo en el mismo orden que aparecen  aqui.

  1.  Microsoft Visual C# Express 2010 (get it FREE here)
  2. .NET Micro Framework  (get it FREE here)
  3. Netduino SDK (Free download)Download 32-bit Netduino SDK v4.1.0Download 64-bit Netduino SDK v4.1.0
Ahora que usted tiene todo el software instalado, vamos a probar que todo funciona. Los controladores para su Netduino más que ya se han instalado con el SDK de Netduino. Si no aparece estar funcionando se puede descargar los controladores desde el Netduino website.
Una vez hecho esto usted estara listo para su primer proyecto de  Netduino .

Mitos sobre los telefonos moviles segun Nokia


Nokia ha querido compartir con los usuarios la aclaración de ocho mitos, que asegura que son falsos, sobre el uso de telefonos  móviles pues realmente los telefonos móviles se han popularizado y su tecnología se ha desarrollado a un ritmo frenético en la última década. Al ser una tecnología bastante reciente, todavía se experimenta sobre su uso  a futuro, lo que ha provocado que en varias ocasiones se hayan generado rumores o mitos sobre sus usos .En todo caso ha querido comentar ocho de estos mitos que, a su juicio, se han ido consolidando  y son «vox  populi»  pero que son totalmente falsos. La compañía ha hecho un repaso a algunas de las historias más populares del mundo móvil para terminar con las ideas, a su juicio equivocadas, relacionadas con los móviles.

1- Incendios en gasolineras:
El primer mito que Nokia ha negado categóricamente es el que asegura que el uso de un teléfono móvil en una gasolinera puede causar un incendio. Sobre este mito, Nokia ha explicado en su blog Nokia Connects que «nunca hasta la fecha ha sucedido». Según Nokia, es falso que los móviles puedan provocar un incendio en las gasolineras.

Para confirmar su tesis, Nokia ha citado al portavoz del Instituto Americano del Petróleo, Robert Renkes, que ha comentado: «no hemos encontrado a ningún teléfono móvil responsable de ningún incendio desde el inicio de la humanidad». Además, Nokia ha publicado un vídeo del programa Cazadores de Mitos en el que desmontaban ese rumor sobre el uso de teléfonos móviles.

2- Ya no progresarán más:
Nokia ha desmentido la idea de que la tecnología móvil ya ha llegado al máximo de su evolución. La compañía ha explicado que esto es totalmente falso y ha asegurado que la evolución seguirá produciéndose.

Además, Nokia ha afirmado que se evolucionará incluso «más rápido que hace cinco años». Según la compañía, siempre han existido mentalidades conservadoras que no creen posible más innovación. Como ejemplo, Nokia ha citado al responsable de la Oficina de Patentes de Estados Unidos de 1899, Charles H. Duell, que aseguró que «todo lo que podía ser inventado ya había sido inventado».

3- Puede hacer que un avión se estrelle:
En tercer lugar, Nokia ha valorado como un rumor la idea de que el uso de móviles puede causar la colisión de los aviones. La compañía finlandesa ha admitido que es «un tema espinoso» porque nadie está seguro al 100 por 100 de la relación de los móviles con los aviones. Sin embargo, Nokia se ha amparado en «el consenso general de que es sumamente improbable que los móviles causen que un avión se estrelle».

Aunque Nokia ha calificado como mito esta relación de móviles y accidentes aéreos, la compañía ha especificado que «más vale prevenir que curar».

4- Provoca cáncer:
Otro tema espinoso es la relación entre la radiación de los móviles y su posible implicación en el desarrollo de cáncer en los usuarios. «Esto ha sido un tema candente en el mundo mediático porque hay una serie de opiniones contradictorias», ha comentado Nokia.

La compañía ha explicado que «la industria móvil cree que los teléfonos son seguros porque utilizan radiación ionizante, diferente de la radiación de los rayos X y del material radiactivo». Pese a ello, Nokia ha reconocido que este tema «no pude ser probado todavía», pero ha señalado que la relación entre móviles y cáncer «aún no se ha demostrado».

NOTA: Según la  Doctora Havas  en Ciencias Medioambientales por la Universidad de Trent (Canadá) , la cual  es un referente mundial en la investigación de los efectos de las radiaciones electromagnéticas que producen los aparatos y, tras años de trabajos, no tiene ninguna duda de que perjudican a la salud.“Ya tenemos pruebas evidentes de la relación entre la radiación de los móviles y la aparición del cáncer, y nos llegan ahora cuando todo el mundo es adicto a los móviles”, ha destacado Havas en una entrevista a Efe. Los cánceres se desarrollan con más celeridad que hace unas décadas y aparecen en la zona cercana al oído, que es donde colocamos el móvil para conversar segun comenta.

 Puede ampliar las informacion sobre este tema aqui: http://www.larazon.es/noticia/2108-limpiar-la-polucion-electrica-y-alejarse-del-movil-garantias-de-buena-salud

5- Puede abrir un coche:
El siguiente mito que Nokia ha eliminado es el que sostiene que se puede abrir un coche enviando la señal de un mando a través de un teléfono móvil. Muchos habrán oído que se pueden abrir un vehículo apuntando el control remoto a un teléfono que esté en contacto con otro dispositivo próximo al vehículo. Sin embargo, Nokia ha confirmado que «por desgracia es completamente falso».

6- La batería se reduce si se carga a diario:
Los siguientes mitos que Nokia se ha encargado de desmentir tienen que ver con la duración de la batería de los teléfonos móviles. En primer lugar, Nokia ha tratado el tema de la reducción de la batería si se recarga todos los días. Este mito es muy popular y se pude aplicar a todos los dispositivos móviles, no solo a teléfonos, que funcionan con batería.

Nokia ha matizado que en el inicio de la telefonía móvil sí podía darse este mito, pero «en las baterías de los ‘smartphones’ de hoy en día (al menos en los Nokia) se han subsanado esos problemas». Los materiales para la fabricación de las baterías han cambiado y además se han introducido mejoras de software para que no se pierda batería por su recarga diaria.

7- Código secreto para la batería:
Nokia ha tratado como un mito falso la extensión de la vida de la batería gracias a la introducción de un código secreto. La compañía ha bromeado sobre este aspecto. Sin embargo, lo cierto es que con la introducción de códigos no se optimiza, pero sí se puede conseguir con novedades de software que optimicen el consumo.

8- El escaso impacto de Nokia:
Nokia ha bromeado con el supuesto mito de que su impacto en el sector ha estado limitado a contadas ocasiones. En este caso, como respuesta, Nokia ha facilitado un enlace a la historia de la compañía en el que se destaca su importancia en el sector y como ha sido una compañía que se ha sabido reinventar.

usuario de nokia

Pinchar aqui para ver el articulo en español

Articulo original en ingles

Ebook gratuito «Cinco años de Twiter»


logo twiter

Cuando uno no se puede imaginar cómo era su vida antes de un invento, podemos decir que ha hecho historia. A 5 años del nacimiento de Twitter, este nuevo libro propone un recorrido por los hechos y números que tuvieron la culpa de que una aplicación muy simple para enviar mensajes vía SMS se transformara en la plataforma mundial de comunicación que es hoy. Para ello se cuenta cómo es Jack Dorsey, cómo evolucionó la empresa, sus planes para ganar dinero y su situación actual, y cómo Twitter influyó en la sociedad, la comunicación y la política.

La sección más extensa intenta contestar dos preguntas que vuelven, aunque quienes lo usemos llevemos tiempo con él: qué es Twitter y cómo usarlo. Porque aunque digamos que todo el mundo tiene que usar Twitter de la forma que quiera y que poner reglas es inútil, siempre sigue interesándonos la forma en que usamos una herramienta que tiene tantas posibilidades.

En Ecosistema Twitter, el tercer apartado del libro, se recomiendan aplicaciones para escritorio y móvil. También servicios para buscar información, seguir temas y medir resultados en Twitter.

Las herramientas son la máquina, pero el alma de Twitter son las personas, ese irrepetible grupo que compone un timeline. El último apartado está dedicado a recomendar a usuarios que son parte de la gran comunidad que tuitea en castellano.

Esta edición cuenta con el patrocinio de Movistar, que dieron su apoyo para que esta publicación pueda llegar a todos ustedes gratuitamente y al mínimo precio admitido en Amazon para Kindle (1,34€)

PULSA AQUI PARA DESCARGARLO

fuente:http://hipertextual.com/ebooks/twitter/

Como conectar un reproductor de blue-ray a un sistema de sonido 5.1


Pasiblemente el lector haya pericibido que la salida 5.1 analogica»ha desaparecido » en los reproductores modernos sustituyendo esta por una simple salida digital
Pero ¿ Y si queremos aprovechar nuestro viejo sistema de sonido 5.1 sin entrada optica ?

Pues hay una solucion : un sistemas 5.1-Channel DTS/AC-3 Home Theater Audio Decoder
conversor 5.1

Estas son sus carastericticas:

– Supports decode DTS, Dolby AC-3 audio signal to 5.1 channel analog audio signal
– Supports decode analog stereo (R / L) audio signal to 5.1 channel analog audio signal
– Two SPDIF input, one coaxial input, one stereo input (AUX)
– One-button switch between signal input channels
– Noise ratio: 120db
– Separation: 80db (1 KHz)
– Frequency response: 20HZ-20KHZ ± 0.5db
– Analog output level: 2.2V
– Package includes:
– 1 x Converter
– 1 x Power adapter (100~240V / 2-flat-pin plug)
– 1 x Fiber cable
– 1 x English manual

¿Que hacemos para ver contenidos 3D si acabamos de comprar una TV que no es compatible con 3D?


pic3d

Parece que aquellos de nosotros que NO nos hemos comprado un TV sin gafas 3D todavía podemo tener la oportunidad de probar el 3D de todos modos. Anunció en la Exposición de Realidad Virtual en Tokio, Pic3D que es una delgada lámina de film transparente, y que permite un efecto 3D sin gafas después de ser aplicado a cualquier pantalla. Ola mundial, la compañía japonesa que fabrica el producto, afirma que utiliza un sistema de lentes lenticulares en vez de barrera de paralaje, alcanzando el 90 por ciento de la transmisión de la luz, y tiene una de 120 grados de campo visual.

Utilizar el cine Pic3D se informa bastante fácil, aunque una aplicación especial debe ser descargado desde el sitio web de Pic3D. Después de instalarlo en un dispositivo digital de los medios de comunicación, el usuario debe ver sus imágenes utilizando la aplicación de una función de reproductor de vídeo, para ver el efecto 3D estereoscópico. Pic3D trabaja con el lado a lado (SBS), el formato de vídeo en 3D solamente, y trabajará para el contenido de SBS en sitios como YouTube.

De acuerdo con la ola mundial, Pic3D puede ser utilizado en cualquier tipo de PC o un teléfono inteligente, la única barrera es el tamaño de la pantalla. En primer lugar, se pondrá en marcha el 12,1», 15,6», 21,5»y 23»pantallas, así como para iPad 2, iPhone y iPod touch. La aplicación será compatible tanto con Windows como iOS.

La versión de iPhone tendrá un precio de JPY2000 (alrededor de 25 dólares EE.UU.) y la más cara de 23 pulgadas hoja tendrá un costo JPY15, 000 (186 dólares EE.UU.). ola mundial dice que las ventas en línea comenzará a principios de agosto a través de su sitio web en perfecto japones. (http://pic3d.net/)


CONVERSOR 2D A 3D

3d converter
El “invento” nos llega desde DealExtreme y consiste en nada menos que una caja conversora 2D-3D, con la que se acabó por fin la falta de material en tres dimensiones.

Estamos hablando de una cajita un poco más pequeña que un CD, que cuenta tanto con entrada como salida por HDMI V1.4 y con soporte hasta 1080p . Lo interesante se encuentra en su interior, puesto que gracias a circuitería específica nos permitirá convertir en tiempo real imágenes 2D (desde cualquier fuente de vídeo que cuente con salida HDMI) a modo 3D. Acepta además multitud de formatos 3D, para que nadie pueda decir que su televisor no lo soporta.

Modos 3D:

Red-Cyan
Amber-Cyan
Side-by-side
Frame Sequential
Modo 2D&3D bypass
Con un mando a distancia (sencillo, pero bueno, funcional), así como un par de gafas 3D (eso sí, de las de colorines) es compatible tanto con televisores basados en sistemas 3D activos (gafas activas) como pasivos (gafas polarizadas), así como todo tipo de monitores y televisores mediante sistema anaglifo (las gafas de colores antes citadas). Vamos con amplia compatibilidad y precio irresisteible, puesto que lo puedes hacer tuyo desde 55€ puesto en casa. Aunque bueno, hoy en día quizás cuente con un interés limitado, ya que todo televisor 3D que se precie suele integrar de serie un conversor de estos en su interior.

Mas informacion en :
http://www.dealextreme.com/p/1080p-hdmi-3d-video-converter-92210

Tambien hay otros dispositivos similares como puede ser le siguinte:

3d converter2
Sus caratereicticas
Model: D3H
– Aluminum alloy casing
– You can watch 3D video on common TV monitor
– Can convert common 2D video to 3D effect
– 3D Depth effect adjustment (Index: Weak/Medium/Strong, by a key switch)
– HDMI V1.3/1.4 input (resolution 480P/576P/720P/1080I/1080P)
– HDMI V1.3 output (1080P/720P), 60Hz
– Supports max resolution: 1920 x 1080, full HD 1080P
– When playing on 2D TV use the included 3D glasses
– When playing on 3D TV use the shutter 3D glasses or polarized 3D glasses
– Package includes:
– 1 x 3D video converter
– 2 x 3D glasses
– 1 x AC 100~240V power adapter (2-flat-pin plug)
– 1 x Remote controller (1 x CR2025 included)
– 1 x Chinese/English manual

Mas información en http://www.dealextreme.com/p/mini-2d-to-3d-hd-video-converter-w-3d-glasses-remote-control-black-110217

Los números de 2011


Los duendes de las estadísticas de WordPress.com prepararon un reporte para el año 2011 de este blog.

Aqui es un extracto

La sala de conciertos de la Ópera de Sydney contiene 2.700 personas. Este blog fue visto cerca de 29.000 veces en 2011. Si fuese un concierto en la Ópera, se necesitarían alrededor de 11 actuaciones agotadas para que toda esa gente lo viera.

Haz click para ver el reporte completo.