Basandome en En C#: Cómo montar un navegador en un TreeView ( 2º versión) hice los apaños necesarios para que ahora me sacara los subdirectorios del direwctorio raiz llamado Documentos y ubicado dentro de la carpeta Debug del proyecto. Algo que se hace así:
Application.StartupPath + "\\Documentos";
Si, y es esa barra, y no esta /. Aviso porque luego la piciamos confundiendonos con Linux.
Las diferencias enrtre un proyecto y otro son:
1. Ahora cargo el contenido de una carpeta, sus subdirectorios. Utilizando como nodo-raiz uno que tenga por ruta la ruta-inicial, que vale la concatenación de Application.StartupPath más el nombre del directorio raiz. Para el nombre del nodo-raiz, poodemos usar la \tipica o el nombre de la carpeta contanedora. Anteriormente, en la segunda versión, usabamos una función que cargaba los drivers, ahora no, ahora cargamos los subdirectorios. Así:
public void Inicio2()
{
//lo primero, cargsr el contenido de la carpeta raiz
rutaInicial = Application.StartupPath + "\\Documentos";
DirectoryInfo dirInf = new DirectoryInfo(rutaInicial);
try
{
foreach (DirectoryInfo subdir in dirInf.GetDirectories())
{
//de cada directorio se obtiene el nombre y el fullname y se convierte a nodo. El nodo se agrega al principal
SuperTreeNode nodo = new SuperTreeNode();
nodo.Text = subdir.Name;
nodo.Ruta = subdir.FullName;
NodoRaiz.Nodes.Add(nodo);
StateLblInformacion.Text = "";
}
}
catch (Exception ex)
{
//en la barra de estado uestro los errores q se pueden gnerar (falta de derechos o unidad no lista)
StateLblInformacion.Text = ex.Message;
}
}
2. La otra diferencia importante, no es nada del otro mundo: deshabilitar el botón que permite suprimir un directorio y la opción del menú contextual. Y esto se hace en el evento AfterSelect del control TreeView. Así:
if (NodoSeleccionado.Ruta.CompareTo(NodoRaiz.Ruta) == 0)
BtnBorrarDirectorio.Enabled = false;
else
BtnBorrarDirectorio.Enabled = true;
MenuItemBorrarDirectorio.Enabled = BtnBorrarDirectorio.Enabled;
Saludos.
26 septiembre 2010
19 septiembre 2010
Cómo quitar del Windows la seguridad UAC

Cinco secillos pasos para deshacernos de las pesadas preguntas que Windows nos hace para evitar posibles cagadas:
1º. Vamos a Panel de control.
2º Cuentas de usuario.
3º Clicamo en Activar o desactivar el control de cuentas del usuario-.
4. Wala! Desactivamos la casilla de Usar el control de cuentas de usuario (UAC) para ayudar a proteger el equipo.
5º Tras esto, al pulsar el botón Aceptar nos preguntará si queremos reiniciar ahora o más tarde. Tras el reincio el Windows Vista, o 7, porque para sendos es igual, no será tan protector.
El dibujo lo saqué de esta web.
Saludos.
08 septiembre 2010
Reparar el acceso a internet en un Windows Vista
Tuve que arreglarle el ordenador a una amiga porque no tenía acceso a nternet usando su Windows Vista. Entonces busqué en Google y localicé esta web. En ella su propietario, mil gracias, nos indica que vayamos al Simbolo del sistema (ir a administración), y antes de abrirlo para meter comando, clicar sobre el icono con el botón derecho para abrirlo como Ejecutar como Administrador. Después, ya dentro, tecleen netsh winsock reset. Tras la ejecución del programa, deberás reiniciar el ordenador. Y walá! Funciona! Y sin rezar a dios.
Esta averia pudo suceder si se coló un virus. Con lo cual tras el reinicio, pase su anivirus para limpiar su pc de troyanos, gusanos y demás guarradas.
Cuando ejecutamos el comando netsh winsock reset, este limpia y resetea al estado de configuración por defecto, elimina todos los LSP (Layered Service Providers) previamente instalados, incluyendo el potencial LSP causante del mal funcionamiento para la conexión de red o internet.
Saludos y gracias al autor del blog, Gabriel Carpio por su aportación.
Esta averia pudo suceder si se coló un virus. Con lo cual tras el reinicio, pase su anivirus para limpiar su pc de troyanos, gusanos y demás guarradas.

Saludos y gracias al autor del blog, Gabriel Carpio por su aportación.
ANEXO ¿Qué es un Layered Service Provider (LSP)?: Layered Service Provider (LSP) es una característica de Microsoft Windows Winsock 2 Service Provider Interface (SPI).Layered Service Provider es una DLL que usa Winsock API para insertarse en la pila de TCP/IP. Una vez en la pila, un Layered Service Provider puede insertar y modificar entradas y salidas de tráfico de Internet. Esto pemite procesar todo el tráfico TCP/IP que tiene lugar entre la Internet y aplicaciones que están accesando Internet (tales como un navegador web, un cliente de correo electrónico, etc).Sacado de la Wikipedia.
05 septiembre 2010
Consejos de Rodrigo para futuro código con ASP, JavaScript, C Sharp, componentes Devexpress y no recuerdo qué más
El viernes el colega de trabajo Rodrigo se pasó buen rato ayudandome a resolver un código sencillo, pero repleto de errores por mi novatez.
Primero, el código javascript se tiene que separar de los archivos aspx porque así se gana limpieza. Estos nuevos archivos se llamarán como los aspx pero con extensión js. Y serán incluidos en los archivos form. De esta manera, siendo esto un ejemlo:
Y ojito con qué nombre ponen a ClientInstanceName, porque en los .js, a las variables de los asp, se las conoce por ese nombre. Se sugiere que el ID de un control y el clientinstancename sean el mismo.
Segundo, javascript es C. Sin enbargo, como en nuestro caso usamos herramientas DevExpress, tendremos que usar los métodos de estas herramientas. Para saber cuales son, pues vamos a la ayuda, y allí tecleamos el nombre del control.
Tercero, ah! Ojo, ojito... No podemos usar un visible común. Sino, que tenemos que usar un clientVisible. Porque la tenemos que visualizar o dejar de hacerlo, de lado del cliente, y no del lado del servidor. En tonces si usamos Visible, nos va a fallar.
Consejo, no vayan de listos, y... Otra cosa, observen si el navegdor seleccionado no dibuja una señal de advertencia.. Porque si lo hace, en el código tienen un error, aunque no se haya detectado en el depurador.
Otros consejos, pero de diseño: usen tablas, y siempre con el mismo número de columnas. Y otra cosa. Uff, no paro. Utilicen y reutilicen UserForm, porque así les va a cundir más.
Saludos.
Primero, el código javascript se tiene que separar de los archivos aspx porque así se gana limpieza. Estos nuevos archivos se llamarán como los aspx pero con extensión js. Y serán incluidos en los archivos form. De esta manera, siendo esto un ejemlo:


Tercero, ah! Ojo, ojito... No podemos usar un visible común. Sino, que tenemos que usar un clientVisible. Porque la tenemos que visualizar o dejar de hacerlo, de lado del cliente, y no del lado del servidor. En tonces si usamos Visible, nos va a fallar.
Consejo, no vayan de listos, y... Otra cosa, observen si el navegdor seleccionado no dibuja una señal de advertencia.. Porque si lo hace, en el código tienen un error, aunque no se haya detectado en el depurador.
Otros consejos, pero de diseño: usen tablas, y siempre con el mismo número de columnas. Y otra cosa. Uff, no paro. Utilicen y reutilicen UserForm, porque así les va a cundir más.
Saludos.
Suscribirse a:
Entradas (Atom)