App.Config/Web.Config Set/Get Value from AppSettings Section

mayo 9th, 2013 Posted in .Net C#, Ayuda Técnica, Programacion Tags: ,

Como obtener y modificar los valores de la sección AppSettings de un fichero de configuración app.config/web.config. Para que no se olvide

using System.Web.Configuration;
using System.Configuration;

System.Configuration.Configuration config = 
	System.Configuration.ConfigurationManager.OpenMappedExeConfiguration(
		new System.Configuration.ExeConfigurationFileMap() { 
			ExeConfigFilename = webconfigFile }, 
			System.Configuration.ConfigurationUserLevel.None);
string oldValue = config.AppSettings.Settings["SomeKey"].Value;
config.AppSettings.Settings["SomeKey"].Value = "NewValue";
config.Save(ConfigurationSaveMode.Modified);
Comentarios desactivados

JQuery Post XML to MVC Controller Accepting POST parameters

mayo 8th, 2013 Posted in .Net C#, Ayuda Técnica, Javascript, Programacion Tags: , ,
JQuery Post XML to MVC Controller Accepting POST parameters

Comunicación Ajax GET / POST. Cuando iniciamos una comunicación AJAX y enviamos información al servidor, se puede hacer por GET (los parámetros concatenados en la URI de la Request) o por POST, quedando ocultos. No sólo eso, sino que los parámetros están internos en la Request.

Una de las arquitecturas utilizadas en el desarrollo de un sitio web ASP.NET, para que quede el código un “poquito” estructurado, es JQuery + MVC. JQuery se encarga de la parte del Cliente y MVC (Modelo Vista Controlador) se encarga de separar la capa presentación de la capa de negocio.

Una vez introducidos, si queremos enviar un XML por JQuery a través de AJAX y que nuestro “Controller” lo recupere sin problemas, podemos hacer lo siguiente.

Parte JQuery que realiza la llamada AJAX hacia el servidor
Leer Mas »

Comentarios desactivados

WCF, Logs de las Peticiones antes y despues de procesar, AfterReceiveRequest y BeforeSendReply

mayo 7th, 2013 Posted in .Net C#, Ayuda Técnica, Programacion Tags: , ,
WCF, Logs de las Peticiones antes y despues de procesar, AfterReceiveRequest y BeforeSendReply

Utilizando IServiceBehavior y IDispatchMessageInspector podemos suscribirnos a los eventos después de recibir la “request” y antes de enviar la “response”. Tener los logs de una comunicación son muy importantes. Lo diferente con en el caso de WCF (Windows Communication Foundation) es que prácticamente sólo configuramos, ya que casi todo el trabajo sucio lo hace .NET. Por este motivo es tan interesante este artículo, porque además de que WCF nos hace el mundo de la comunicación mucho más sencilla, también podemos registrar los mensajes recibidos y enviados.

Existen otras técnicas para registrar toda la comunicación (System.Diagnostics), el problema que encontré es que podía llegar a dejar demasiada información, lo que me resultaba inservible. De todas las soluciones que estuve probando esta era la que mejor se adaptaba a lo que necesitaba.

La clave está en crear un “CustomAttribute” para nuestro servidor, y que este registre la información que necesitamos.
Leer Mas »

Comentarios desactivados

Suscribirse a los eventos del Visor de Sucesos para generar logs

abril 23rd, 2013 Posted in .Net C#, Ayuda Técnica, Programacion Tags: , ,
Suscribirse a los eventos del Visor de Sucesos para generar logs

Suscribirse a los eventos del Event Viewer para imprimir logs relacionados con nuestra aplicación. Esto es útil si queremos que en un mismo fichero de logs aparezcan los logs de la aplicación y los logs que se generan en el propio visor de sucesos del Windows, directa (mediante “System.Diagnostics”) o indirectamente (por error de la aplicación). Aunque parezca que no sea para tanto si que es interesante, como me ha sido útil en caso particular, me lo guardo para tenerlo bien apuntadito.

Con el siguiente código tendremos suficiente para ir tirando y saber como suscribirnos a los eventos del event viewer.

String LogMonitor = "Application";
if (EventLog.Exists(LogMonitor))
{
	if (eventLog == null)
	{
		eventLog = new EventLog(LogMonitor);
		eventLog.EntryWritten += new EntryWrittenEventHandler(EventLog_EntryWritten);
		eventLog.EnableRaisingEvents = true;
	}
}

Leer Mas »

Comentarios desactivados

Acceso a Ficheros mediante credenciales de forma remota

abril 22nd, 2013 Posted in .Net C#, Ayuda Técnica, Programacion, Sistemas Tags: , ,
Acceso a Ficheros mediante credenciales de forma remota

Interaccionar con los ficheros de otro pc utilizando las credeciales de usuario y password. Código de ejemplo para conectarse a un servidor mediante login para poder copiar, borrar o renombrar ficheros de forma remota.

Para poder acceder a los ficheros de otro pc que esta protegido con usuario y contraseña, necesitamos utilizar la librería “advapi32.dll”, la cual se conecta al servidor utilizando el método “LogoUser”. Una vez estamos conectados nos devuelve por referencia un manejador del usuario indicado A pointer to a handle variable that receives a handle to a token that represents the specified user. MSDN. Una vez tenemos el manejador del usuario, ya podemos inicializar una nueva instancia de la clase WindowsIdentity con este usuario. Así cuando accedamos a los ficheros no nos dará error de acceso denegado ni nada parecido, porque estaremos utilizando la cuenta de windows especificada anteriormente.

A continuación, un posible ejemplo del código que nos puede interesar.
Leer Mas »

Comentarios desactivados

Reminder: Group/Ungroup y Lista de Valores en Excel

junio 4th, 2012 Posted in Ayuda Técnica, Programas Tags: ,
Reminder: Group/Ungroup y Lista de Valores en Excel

Como Agrupar filas y como poner varios valores seleccionables tipo ComboBox en una celda del excel. Consiste en agrupar filas para que aparezca el simbolo +/- para plegar o desplegar, tipo “collapsable” o “accordion”. Por otro lado consiste en configurar celdas como ComboBox con una lista de valores. El siguiente paso (opcional) esta en configurar el formato de las celdas en función de un texto concreto.

Es una operación que hemos repetido varias veces, sabemos que existe, pero nunca nos acordamos de como volverlo hacer. Así que escribo el recordatorio de como Agrupar filas, y como generar lista de valores para utilizar en celdas concretas.
Leer Mas »

Comentarios desactivados

Explicación UTF-8 Encoding y porque el XmlDocument da problemas

mayo 24th, 2012 Posted in .Net C#, Ayuda Técnica, Programacion, Programas Tags: , ,
Explicación UTF-8 Encoding y porque el XmlDocument da problemas

La codificación UTF-8 es una de las más utilizadas para representar cualquier carácter Unicode. La codificación usa símbolos de longitud variable (de 1 a 4 bytes por carácter unicode). Es decir, que 1 carcater unicode puede ocupar hasta 4 bytes, cuando en ascii 1 caracter es 1 byte.

Una forma de identificar que el texto esta codificado en UTF-8 es con el BOM Byte Order Mark, que son una serie de 3 bytes concretos. Útil por ejemplo en el envio de texto por stream.

un carácter 0xFEFF, codificado en UTF-8 como 0xEF,0xBB,0xBF o 239 187 191

Leer Mas »

Comentarios desactivados

Tip: Remove Install ePo Agent McAfee

mayo 22nd, 2012 Posted in Antivirus, Seguridad, Sistemas Tags: , ,
Tip: Remove Install ePo Agent McAfee

El proceso ePo Agent de McAfee es el encargado de revisar las políticas de seguridad del antivirus instalado en diferentes máquinas (McAfee). Esta herramienta permite administrar la seguridad y las políticas de diferentes equipos, haciendo que se cumplan las reglas configuradas. En otras palabras, si un usuario desconfigura el McAfee, esta herramienta restaura la configuración que ha diseñado el responsable de seguridad.

Lo malo es, que en ocasiones la configuración que pueda ser correcta para unos usuarios, puede ser un gran “dolor de cabeza” para otros. Porque un antivirus mal configurado es peor que un virus. Por este motivo, como medida temporal, curiosidad, o por algún motivo concreto, se puede eliminar el proceso ePo agent de Mcfee para que no restaure la configuración. Esto no siempre funciona, porque normalmente una de las tareas del servidor es revisar que el “agent” este en ejecución y sino es así lo levanta.

Como eliminar el Agent (si se puede)

Leer Mas »

Comentarios desactivados

Tip: Como Ampliar/Extender Disco en Windows XP SP3

mayo 10th, 2012 Posted in Ayuda Técnica, Sistemas Tags: ,
Tip: Como Ampliar/Extender Disco en Windows XP SP3

Como ampliar o extender el disco o partición en un Windows XP. En ocasiones necesitamos ampliar el disco de una máquina virtual (virtual machine) o ampliar el espacio de una partición del disco. Para poder hacerlo necesitamos “espacio no utilizado”. Esto se consigue si existe espacio no asignado a ninguna partición y no esta formateado. (creo, no soy de sistemas).

Desde una máquina virtual con VMWare es sencillo ampliar el espacio del disco: “VMWare: Settings – seleccionar Hard Disc – Utilities – Extend.” El problema con windows xp, es que no autodectecta que el disco ha crecido. El nuevo espacio asignado no lo reconoce, por lo que hay que indicarle al sistema que el disco a crecido y que lo extienda.

Posible Solución

Leer Mas »

Comentarios desactivados