Error: Faulting application explorer.exe, faulting module nzdd.dll

Cuando uno quiere terminar un trabajo, las leyes de Murphy están a la  mano, siempre tu notebook va a tener algún problema 🙁
Tengo o mejor dicho, tenia un error en Windows XP Media Center al abrir el Explorador de Windows, o sea al ejecutar C: o al abrir MI PC, cualquier evento que lo utilice y me estaba desesperando. Hay que respirar profundamente antes de dar golpes 😉

En el Visor de Eventos se visualizaba:

Faulting application explorer.exe, version 6.0.2900.3156, faulting module nzdd.dll, version 4.0.0.40, fault address 0x000b4930.

image

 

Googleando un poco di con la solución: BORRAR o RENOMBRAR el archivo.

image

A quien pertenece?

image

 

Espero que le pueda servir a alguien…

Gráficos a la carta: Google Chart API

Estos tipos de Google, siempre tiene algo! y siempre es bueno darle una mirada. Estaba mirando Google Chart API, una forma sencilla de poder tener gráficos en nuestras web (o por ejemplo en nuestros blogs) sin estar utilizando nada mas que una URL, … mediante un querystring enviamos los datos y tenemos nuestro gráfico directamente desde Google, "gráficos a la carta"
La idea de este servicio es brindar a los desarrolladores lo que antes era solamente para uso interno (ej: Google Finance) ahora lo publicaron para utilizarlo por el resto de los mortales
Con una seria de parámetros en la URL de la API en una tag IMG, y nos devuelve un PNG.

<a src="http://chart.apis.google.com/chart?param1=valor&param2=valor2&paramN=valorN" alt="Grafico en Geeks.ms" />

Hay que dominar estos "parámetros" (o encapsularlo en un webcontrol que es mi idea en estos días…para practicar), pero para eso tenemos la ayuda en esta página donde nos brinda el dialecto para hablar con la API

Encontré unos controles, por el que necesita probarlo en sus proyectos sin estudiar el idioma:

   

Política de Uso: solamente 50000 peticiones por usuario por día.

Por ejemplo:

Ejemplo 1

Grafico en Geeks.ms

<img src="http://chart.apis.google.com/chart?
cht=p3
&amp;chd=s:hW 
&amp;chs=450x150
&amp;chl=Geeks.ms|World"
alt="Grafico en Geeks.ms" />

Ejemplo 2

Grafico en Geeks.ms

<img src="http://chart.apis.google.com/chart?
chs=450x200
&amp;chd=s:AWcaZPaWXX
&amp;cht=lc
&amp;chxt=x,y
&amp;chxl=0:|Enero|Febrero|Marzo|Abril|Mayo|1:||usuarios" 
alt="Grafico en Geeks.ms" />

 

Ejemplo 3

Grafico en Geeks.ms

<img src="http://chart.apis.google.com/chart?
cht=lxy
&amp;chs=450x200
&amp;chd=t:0,30,60,70,90,95,100|20,30,40,50,60,70,80|10,30,40,45,52|100,90,40,20,10|-1|5,33,50,55,7
&amp;chco=3072F3,ff0000,00aaaa
&amp;chls=2,4,1
&amp;chm=s,FF0000,0,-1,5|s,0000ff,1,-1,5|s,00aa00,2,-1,5" alt="Grafico en Geeks.ms" />

 

 

 

Tipos de Gráficos

Lineas

image image image image image

image image image image image

image

Barras

image image image image

Torta

image image

Diagramas de Venn

image

Gráficos de burbujas

image

Varios

image image image

 

 

 

Enlaces

ValidatorCalloutExtender: Como posicionar/desplegar a la izquierda

Cuando uno mas quiere utilizar un elemento en programación seguro que le falta la propiedad que desea…esto podría ser tranquilamente una Ley de Murphy, como en este caso donde por razones de UI: el control se escondía mas allá de límite de la página

image

Y cuando me dispongo a buscar una propiedad para posicionar o visualizar a la izquierda (tipo el control HoverMenu que tiene una propiedad PopupPosition="Left") no la tiene, pero lo bueno que es código abierto así que podemos "poner nuestras manos en el asunto"

 

Como utilizar el control ValidatorCalloutExtender

Cuando insertamos el control ValidatorCalloutExtender

image

Tenemos la posibilidad de "extender" los controles de validación, dando a estos un mecanismo de UI mas "sensible al usuario"

Ejemplo:
Si tenemos un formulario con controles de validación

image

Al validar…

image

 

El código que nos define (la parte del los controles)

<tr>
                   <td style="width: 56px">
                       Nombre:</td>
                   <td style="width: 296px">
                       <asp:TextBox ID="txtNombre" runat="server"></asp:TextBox>
                       <asp:RequiredFieldValidator ID="rfvNombre" runat="server" Display="Dynamic" 
                               ErrorMessage="El campo &lt;strong>NOMBRE</strong> es requerido. Verifique" 
                               ControlToValidate="txtNombre" CssClass="itemError">&nbsp;&nbsp;&nbsp;&nbsp;</asp:RequiredFieldValidator>
                       <cc1:ValidatorCalloutExtender ID="vceNombre" runat="server"                    
                               TargetControlID="rfvNombre" 
                               Width="200px"
                               HighlightCssClass="highlight" 
                               WarningIconImageUrl="warning.gif"
                               CloseImageUrl="close.gif" >
                       </cc1:ValidatorCalloutExtender>
                   </td>
               </tr>
               <tr>
                   <td style="width: 56px; height: 24px;">
                       Email:</td>
                   <td style="width: 296px; height: 24px;">
                       <asp:TextBox ID="txtEmail" runat="server"></asp:TextBox>
                       <asp:RequiredFieldValidator ID="rfvEmail" runat="server" Display="Dynamic" 
                       ErrorMessage="El campo &lt;strong>EMAIL</strong> es requerido. Verifique" 
                       ControlToValidate="txtEmail" CssClass="itemError">&nbsp;&nbsp;&nbsp;&nbsp;</asp:RequiredFieldValidator>
                     <cc1:ValidatorCalloutExtender ID="vceEmail" runat="server"                    
                               TargetControlID="rfvEmail" 
                               Width="200px"
                               HighlightCssClass="highlight" 
                               WarningIconImageUrl="warning.gif"
                               CloseImageUrl="close.gif" >
                       </cc1:ValidatorCalloutExtender>    
                       
                       </td>
               </tr>

 

Este mismo ejemplo o similar lo podemos encontrar en aquí en la Demo de ValidatorCalloutExtender

 

 

¿Como desplegar a la izquierda el Validator Callout?

Como comente no existe tal propiedad, pero como no fui el único que la solicito existe un "fix" entre los varios Issues que lo podemos ver en el Issue Tracker de AjaxControlToolkit

ValidatorCallout positioning problem

   Para eso hay que descargarse un fix (CalloutPosition.zip)  y agregarlo al proyecto y compilarlo de nuevamente

 

Si descargamos los archivos del codigo fuente tenemos una estructura de directorio asi

image

y cuando descomprimo el archivo CalloutPosition.zip, aparecen los tres archivos que necesitamos cargar al proyecto

image

Donde iria?.. si no queremos pensar mucho va aqui

     AjaxControlToolkitAjaxControlToolkitValidatorCallout

image

El único archivo que tenemos que agregar al proyecto es CalloutPosition.cs, lo otros lo sobreescribimos.

Abrimos la solucion

image

image

image

La compilamos… y si tenemos la referencia en el VS2005 en la barra de herramientas a una ubicación que se actualiza con dicha compilación no tendríamos que hacer nada.

Sino tenemos que quitar la referencia al componente antiguo y agregar el nuevo.

y Ahora si!

Tenemos la propiedad CalloutPosition, y lo posicionamos a la izquierda

image

y el resultado

image

En este ejemplo no es el perfecto, ya que no se visualiza el label "Nombre" pero en el proyecto teníamos fondos ya predefinidos donde el nombre del label era una imagen arriba del control

 image

 

Listo para utilizar

Aquí tiene ya el componente listo para utilizar (sin descargar nada mas, sin compilar)

    -  AjaxControlToolkit ConCalloutPosition 
       http://geeks.ms/files/folders/fernandezja/entry69631.aspx

Como tener N cuentas de Google Analitycs en la misma página (por fin en Geeks.ms)

Un dilema que teníamos y que necesitábamos terminar nuestra incertidumbre con nuestros amigos de Google enviando emails y quien sabe "ondas mentales",  era como cargar o instalar el código de seguimiento en dos cuentas de Google Analitycs: GA en la misma página, pero como a todos la respuesta recibida del "equipo de GA" fue (hace un par de meses)

(…)Google Analytics no admite la inclusión de varios números de cuenta para el código de seguimiento, ya que esto podría generar informes incorrectos.
No podemos garantizar la precisión de los informes con este tipo de implementación.(…)

Aquí el email original…(que mal escribi analytics en el asunto del mensaje ;( …)

image

Por aquí en Geeks teníamos estos artículos

La solución: Instalar código de seguimiento de dos cuentas de Google Analytics

Pero por fin encontré la solución de la mano de Google, y sus queridos

Con el código anterior (si todavía no lo cambiaste mira aquí)

<script src="http://www.google-analytics.com/urchin.js" type="text/javascript"></script>
<script type="text/javascript">
    _uacct = "UA-326213-1";
    urchinTracker();

    _uff = 0; // Reset flag to allow for second account
    _uacct = "UA-310446-14";
</script>
 
<script type="text/javascript">
var gaJsHost = (("https:" == document.location.protocol) ?
"https://ssl." : "http://www.");
document.write(unescape("%3Cscript src='" + gaJsHost +
"google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
</script>
<script type="text/javascript">
    var primerCodigo = _gat._getTracker("UA-326213-1");
    primerCodigo._initData();
    primerCodigo._trackPageview();
    
    var segundoCodigo = _gat._getTracker("UA-310446-14");
    segundoCodigo._initData();
    segundoCodigo._trackPageview();
</script>
 

Yo lo tengo aqui en el mismisimo blogs de Geeks.ms (eso que tanto queríamos) en mi blog

image

 

 

Donde escribir… en el CS 2.1?

Para eso vamos donde nos comenta Rodrigo: Estadísticas del blog con Google Analytics y Community Server 2.1 

En el Panel de Control

image

en la parte de

image