miércoles, 31 de agosto de 2011

Desaparece la ventana de datos del informe en visual studio

Sintomas:
Probablemente por error cierras la ventana de datos de un informe RDLC (donde estan el exporador de servidores y las herramientas). No encuentras como abrirla de nuevo.
Solución:
Cuando estas en el informe fijate bien en el menú ver abajo del todo. Ahí tienes la opción.
¿por qué no está en el menú ventana? Misterios.

lunes, 29 de agosto de 2011

Crash de visual studio 2010 al pulsar control + insert (o ctrl+supr)

Sintomas
En visual studio 2010 editando HTML en el momento en que pulsas control insert o control suprimir se produce un crash fatal de Visual Studio que te obliga reiniciar perdiendo todo el trabajo que no se haya guardado automáticamente.

Solución:
Usar ctrl+C y ctrl +V hasta que San Microsoft haga un parche.
Solución:
Actualiza la extensión devColor a la última versión (si es que la tienes instalada)

jueves, 11 de agosto de 2011

Cambiar la url de un servicio web WCF desde código

Solución:
Public Function ConectaServicio(ByVal url As String) As servicio.clienteServicio
        Dim servicio As New servicio.clienteServicio()
        servicio.Endpoint.Address = New ServiceModel.EndpointAddress(url)
        Return servicio
    End Function

martes, 9 de agosto de 2011

En una consulta linq to LastOrDefault no funciona

Problema
Quieres encontrar el último elemento de una tabla que cumple una condición.

 Dim convocatoriaUltima = (From c In bd.Convocatoria 
              Where c.idConvocatoria=idConvocatoria  
              Order By c.FechaInicio ).LastOrDefault
Pero al ejecutar obtienes un error acerca de que LastOrDefault no esta soportado.

Solución
Ordena al reves y usa FirstOrdefault
 Dim convocatoriaUltima = (From c In bd.Convocatoria 
               Where c.idConvocatoria = idConvocatoria 
               Order By c.FechaInicio Descending).FirstOrDefault



viernes, 10 de junio de 2011

Exportar buzones de exchange 2010 SP1 a pst

Problema:
¿Cómo exportar los buzones de exchange a un archivo pst?
Solución:
Utiliza los mandados del powershell para exportación e importación
Referencia:
 http://technet.microsoft.com/en-us/library/ee633455.aspx#Exp
Un buen articulo:
 http://www.stevieg.org/2010/07/using-the-exchange-2010-sp1-mailbox-export-features-for-mass-exports-to-pst/
Un ejemplo
Creas las tareas de exportación:
foreach ($i in (Get-Mailbox -OrganizationalUnit 'empresa.org/UsuariosProxima Baja'))
                                           { New-MailboxExportRequest -Mailbox $i

                                              -FilePath "\\fichero\datos\BuzonesAnteriores\$($i.Alias).pst"
                                            }
Las consultas
Get-MailboxExportRequest|Get-MailboxExportRequestStatistics
Las borras cuando han terminado:
Get-MailboxExportRequest|remove-MailboxExportRequest

Importante: Solo funciona a partir del SP1

My,log.writeEntry y ApplicationPoolIdentity en ASP.NET IIS 7.5

Sintomas
En tu aplicación asp.net quieres registrar determinadas sitiaciones usando my.log.writeEntry ("texto a registrar"). Pero cuando vas a buscar el archivo de registro no lo encuentras.
Realmente lo que no encuentras es el perfil del usuario bajo c:\users
Si vas al pool de aplicaciones ves que el usuario es ApplicationPoolIdentity.
Pero sigue si estar.
Solución
Ves al pool y pon en true la opción Cargar perfil del usuario (Load user profile).
Reinicia el pool.
Entonces ya tienes un perfil usuario con el nombre del pool. Por ejemplo: ASP.NET v4.0
Navengando en el perfil como sigue encontraras el archivo de log.

c:\Users\ASP.NET v4.0\AppData\Roaming\Microsoft Corporation\Internet Information Services\7.5.7600.16385\w3wp.log

martes, 7 de junio de 2011

Problemas conexion TASKTASK de Ipad con exchange

Síntomas:
El programa tasktask para sincronizar las tareas con un servidor exchange no funciona.

Tips para solucionarlo en un entorno exchange forefront TMG
La clave esta en que se debe tener acceso a los servicios web del exchange (aplicación /EWS del IIS) desde el exterior.
Para verificarlo intentar navegar hasta:

https://exchange.tueempresa.com/EWS/Services.wsdl

Donde exchange.tuempresa.com es tu url de publicación exchange
Si no funciona hay que trabajar en esta línea:
El servicio Web está publicado en la misma regla que Outlook AnyWhere (por lo menos en mi caso), es posible que Outlook AnyWhere esté funcionando pero no funciones otros servicios o caminos publicados (EWS o OAB)
Puedes comprobar  y recibir información  con el botón prueba de la regla de publicación.

Yo tenía dos problemas la url externa de publicación y los metodos de autenticación.
La url externa de publicación por defecto era midominio.com/EWS y mientras que debia ser exchange.midominio.com/EWS. Por otro lado los metodos de autenticación en Exchange y Forefront no coincidian.
Para ver la configuración en el Shell de Exchange:

get-WebServicesVirtualDirectory |fl


Luego puedes modificar los valores con:
 
Set-WebServicesVirtualDirectory -Identity * -ExternalUrl https://www.contoso.com/EWS/exchange.asmx
Set-WebServicesVirtualDirectory -Identity * -WindowsAuthentication $true

Referencia set-webservicesvirtualdirectory