martes, 7 de enero de 2014

Poner el modo incognito como modo predeterminado


Buenas amigos, en esta ocasión hago una publicación sobre una pregunta que veo algo un poco frecuente y es como hacer para que los navegadores (Este caso Internet Explorer y Google Chrome) se inicien siempre o con iconos aparte en modo de incógnito

Listo sin más charla empecemos, usaremos algo llamado línea de comandos o parámetros que usan todos los programas o al menos la gran mayoría de estos.
Vamos al icono del navegador que queremos que inicie en modo incognito (Ya sea que este se encuentre en el menú inicio o en el escritorio o donde sea) le damos click drecho y luego propiedades


  

Se nos abriera la ventada de las propiedades como esta:

En la opción llamada Destino dice:
“C:\Program Files\Google\Chrome\Application\chrome.exe”
 y este lo vamos a remplazar por:
"C:\Program Files\Google\Chrome\Application\chrome.exe" --incognito
Y presionamos aceptar y listo, al dar click sobre el icono se nos abrirá la ventana en modo incognito


 En el caso de internet explorer es exactamente lo mismo, solo que esta vez reemplazaremos
"C:\Program Files\Internet Explorer\iexplore.exe"
Por este:
"C:\Program Files\Internet Explorer\iexplore.exe" –private


En caso de que no nos guste la ventana en blanco o quieras que inicie directamente en un sitio web, agregas la dirección o url del sitio seguido del parámetro de incógnito. Ejemplo:

"C:\Program Files\Google\Chrome\Application\chrome.exe" --incognito miprogramador.blogspot.com
"C:\Program Files\Internet Explorer\iexplore.exe" –private miprogramador.blogspot.com

Eso es todo amigos, espero haberles ayudado y no olviden dejar sus comentarios

Nota importante: Varias personas se han comunicado a decirme que el comando para Google Chrome no les funciona, para que les funcione recuerden que es "--incognito" y no "-incognito", es decir; antes de la palabra incognito van dos signos menos (--) no un guion (-). No se confundan

lunes, 6 de enero de 2014

9.Comprobar si existe un SubString

A veces se nos da la necesidad de buscar una cadena dentro de otra cadena, por ejemplo;
Cadena = "Esto es un ejemplo de substring"
PalabraClave= "ejemplo"

Teniendo entonces la palabra clave que vamos a buscar y el objeto, contenedor o variable en el cual la vamos a buscar, podemos entonces realizar la búsqueda y nos devolverá como resultado un 12 que es el numero del carácter en el cual se encuentra ubicada la palabra clave.

Código:

        Dim Pos As Integer
        Dim PalabraClave As String = "mama"
        Dim BaseInts = "hola mi nombre es superman, mama"
        Dim PosIni As Integer

        'TipoBusqueda corresponde si se busca Mayus y Minus identicas...
        Dim TipoBusqueda As Long
        'Verificar si PalabraClave no esta vacía
        If Len(PalabraClave) Then
            'Busca desde la PosIni que se indico...
            Pos = InStr(PosIni + 1, BaseInts, PalabraClave, TipoBusqueda)
            If Pos > 0 Then
                'Si devolvio mayor de 0...se encontro
                With BaseInts
                    BaseInts = Pos - 1
                    BaseInts = Len(PalabraClave)
                End With
                MsgBox("Se encontro la palabra ne la posicion " & Pos)
            Else
                'No se encontró
                MsgBox("No se encontro.")
            End If
        End If


Si corremos este código tal y como esta nos dara como resultado este mensaje

8.Barrido de Texto

El barrido de texto él una función que busca un texto X dentro de un contenedor o cadena y lo remplaza por un texto Y. como por ejemplo:

Me.TextBox1.Text = Replace(Me.TextBox1.Text, "Texto X", "Texto Y")


En la anterior linea vemos que se realiza un barrido en el contenedor , que en este caso es la caja de texto 1 (Textbox1.Text), (cabe recordar que un contenedor puede ser todo aquello que contenga texto previamente asignado, una variable tambien puede ser un contenedor para un barrido), detro del contedor se buscara el texto –“Texto X” y si existe sera remplazado por –“Texto Y”, en el caso de que el texto no exista o no concuerde no se llevara acabo ninguna accion.

sábado, 4 de enero de 2014

7.Ballon Tip o balón de información


Buena sin duda esta función durante mucho tiempo fue una de las que más me intereso pero nunca pude saber como hacerla tal vez fue por falta de información sobre esta, pero ahora ya la puedo hacer y hablo del Balloon Tip (de ahora en adelante balón de información) es ese valoncito de información que vemos que sale del icono de dispositivos USB cuando conectamos una memoria o algo por el estilo, solo que esta vez lo aremos desde el icono de sistemas de nuestra aplicación


Me.NotifyIcon1.ShowBalloonTip(500, "Ubunto""Ubunto no esta listo", ToolTipIcon.Error)

Suponiendo que tengas una aplicación con un nombre (X), en este caso usaremos el nombre Ubunto como un ejemplo, el anterior código nos daría esto:
No hará falta recordar que para esto debemos declarar ciertos objetos como lo son el NotifiIcon1 y si ya le tienes un nombre predeterminado declarado igual servirá solo edita el nombre en el código e igual funcionara.

Para cerrar el fragmento de código vemos esta línea: “ToolTipIcon.Error)”, observe que esta es una línea en donde le declaramos al programa el tipo de información que le mostramos, el principio es el mismo que en el Msgbox en donde se muestran errores, información, exclamación, etc. Será suficiente con la eliminación de la palabra error para que Visual Basic que muestre la gama de opciones que puedes usar n esta sección, siga leyendo para ver más ejemplos.

Ejemplos:

Información

Me.NotifyIcon1.ShowBalloonTip(500, "Ubunto", "Ubunto esta listo para iniciar", ToolTipIcon.Info)


Advertencia

Me.NotifyIcon1.ShowBalloonTip(500, "Ubunto", "MMM... ya no se me ocurre nada!", ToolTipIcon.Warning)

Búsqueda Secuencial

La búsqueda secuencial es una de las Estructuras de datos mas simples que hay, que consiste en buscar el elemento buscado secuencialmente, como su nombre lo dice, es decir que lo busca uno por uno hasta que lo encuentra

Ejemplo:

public  int busquedaSecuencial(int []arreglo,int dato){
               int posicion = -1;
               for(int i = 0; i < arreglo.length; i++){//recorremos todo el arreglo
                   if(arreglo[i] == dato){//comparamos el elemento en el arreglo con el buscado
                    posicion = i;//Si es verdadero guardamos la posicion
                   break;//Para el ciclo
                   }
           }
           return posicion;


       }


Anteriormente tenemos un método que nos recibe dos parámetros, uno es un vector en el que se realizara la búsqueda y el otro es el dato que se va a buscar

A continuación declara una variable posición que tiene como valor inicial -1. TENER EN CUENTA QUE SI EL MÉTODO DEVUELVE -1 QUIERE DECIR QUE EL ELEMENTO BUSCADO NO EXISTE EN EL VECTOR

Luego en un ciclo compara dato por dato hasta encontrar uno que sea igual al dato que se busca, toma la posición del dato encontrado y lo guarda en la variable “posición” que luego es retornado

Llamado o utilización:
  String datoS = JOptionPane.showInputDialog("Digite el dato que desa buscar");
    int dato = Integer.parseInt(datoS);
    int p = Metodos.busquedaSecuencial(Metodos.vectorA, dato);
  
    if (p==-1){
        JOptionPane.showMessageDialog(null,"El dato: " + dato + ", no se encuentra en el vector");
    }else {
        JOptionPane.showMessageDialog(null,"El dato: " + dato + ", se encuentra en la posicion " + p );

    }
Pero uno de los defectos que tiene este método es que en un grupo de objetos muy grande, el procedimiento se hace extremadamente lento, por lo cual no es recomendable en vectores o matrices o lo que sea, demasiado extensos 

6. Crear y Escribir Archivo

Durante la vida de programación seguro que muchas veces se nos da la necesidad de hacer que nuestro programa guarde información que necesitamos de una fuente en modo de ejecución o de una fuente de código

Ejemplo:


Dim strStreamW As Stream
Dim strStreamWriter As StreamWriter
Dim ds As New DataSet
Dim FilePath As String = "C:\nombreArchivo.txt"

strStreamW = File.OpenWrite(FilePath)
strStreamWriter = New StreamWriter(strStreamW, _
                            System.Text.Encoding.UTF8)
strStreamWriter.WriteLine("")
strStreamWriter.Close()

 


En las líneas de 1 al 4 vemos declaraciones de variables que serán utilizadas en las funciones para guardar y escribir, pero vemos una particularidad en la línea 4 que es ("C:\nombreArchivo.txt"), en este espacio debemos ubicar el directorio, el nombre y extensión de nuestro archivo que vamos a crear (cabe recordar que  al tener la facilidad de ubicar nuestra extensión, podemos poner desde archivos de texto plano .txt a puede ser hasta nuestra propia extensión)
En la línea 7 es donde se coloca el texto que queremos ingresar en el documento que estamos creando, si es un texto propio  lo ubicaremos dentro de las comillas, en caso de no ser así, en el caso que queramos introducir el texto de un textbox o cualquier otro contenedor de texto previamente determinado utilizaremos el nombre del contenedor y eliminaremos las comillas como se muestra en el siguiente ejemplo.

7.  strStreamWriter.WriteLine(Me.Textbox1.text)

5. Leer los último X bits de un archivo de texto.



  Dim sr As New System.IO.StreamReader("D:\001.txt")

        Dim LastLines As String
        Dim FirstWord As String = "END BLOCK"

        sr.BaseStream.Seek(-12, IO.SeekOrigin.End)
        LastLines = sr.ReadToEnd

        MsgBox(LastLines)




Bueno este código es muy sencillo, lo que hace es obtener una cantidad de datos del final de un archivo de texto y la cantidad puede ser libre. Ejemplo:
Un archivo de texto contiene los siguientes bits: “HOLA MUNDO”
Y queremos capturar o obtener los últimos 5 bit, entonces obtendríamos la palabra “MUNDO” ya que son los últimos 5 caracteres.

La explicación: ahora si les explico la función, en la primera línea vemos la declaración de archivo, ahí es donde debemos poner la dirección de el archivo para que el programa pueda funcionar exactamente con ese archivo. Las siguientes dos líneas son declaraciones y en la tercera en la parte con roja es donde señalamos la cantidad de bit que queremos capturar, note que siempre hay que poner dos bit de más de los que se quiere, es decir que si quiere 5 bits debes pone 7, si quieres 10 pones 12

4.Leer el archivo por líneas

Este código lo que hace es leer determinada línea de un archivo, de la siguiente manera:


Dim líneas As String() = IO.File.ReadAllLines("C:\ja.txt")
        Dim línea2 As String = líneas(1)
        Me.TextBox1.Text = línea3
        Dim línea3 As String = líneas(2)
        Me.TextBox2.Text = línea2
 

En la primera línea se declara el objeto, en la segunda se declara la función que es para leer líneas determinadas y la guarda en una variable con el nombre de la línea usada.

La parte señalada en rojo es la que indica que línea es la que se va a leer, en el caso de la primera lee la línea 2 que está marcado con el numero 1, igual en el caso de la línea 3 que está marcado con el numero 2. Note que las líneas se llaman con su número anterior, debido a que el conteo empieza desde 0 (Cero) como en los vectores.

Método de Burbuja



En la programación la necesidad de ordenar datos es algo totalmente básico, es por eso que surgen los métodos de ordenamiento, debido a que el método de ordenamiento debe adaptarse a la circunstancia del dato ordenado es que existen tantos de estos, a continuación veremos los más destacados

Método de Burbuja:
El método de burbuja es muy sencillo y de hecho si buscas en Internet puedes encontrar muchos ejemplos como el de a continuación
______________________________________________________________________________
  

  public void ordenaApellidos(Persona[] arreglo) {
                int in;
                for (int i = 1 ; i < (arreglo.length-1) ; i++) {
            Persona aux = arreglo[i];
            in = i;    //inicia el desplazamiento en i
                              
             while (in > 0 && arreglo[in - 1].getApellidos().compareTo(aux.getApellidos()) > 0) {
                                   arreglo[in] = arreglo[in - 1];    //desplaza el elemento hacia la derecha
                                   --in;
            }
                                                              
                   arreglo[in] = aux;    //inserta elemento
                              
                }
    }

Método de burbujas para vector de números

public static void burbuja(int [] A){
        int i, j, aux;
        for(i=0;i<A.length-1;i++)
             for(j=0;j<A.length-i-1;j++)
                  if(A[j+1]<A[j]){
                     aux=A[j+1];
                     A[j+1]=A[j];
                     A[j]=aux;
                  }

}
______________________________________________________________________________
Pero aquí vamos a profundizar un poco más el método y un ejemplo también

Tenemos un programa que nos registra un personal, entre los datos de estas personas están Identificación, Nombre, Apellido y la edad. Con la anterior información registramos a las personas en nuestro sistema, pero además de eso nuestro programa tiene otras funciones como lo son Buscar, Modificar y Eliminar (Funciones básicas para los registros)

A demás tiene una opción Listar (Para listar todos los registros), Limpiar (Para limpiar el textarea donde se muestran los registros) y Ordenar (Para ordenar alfabéticamente los registros) y es en el botón ordenar donde usaremos el método de burbuja


Una vez ingresada la informacion en varios registros, en este caso tres registros que como vemos en la imagen de acontinuacion esta desorganizado, al menos no de manera alfabetica desde los apellidos



Pero si presionamos el botón Ordenar, el cual enviara el vector al método de ordenamiento de burbuja y con este procedimiento el vector quedara con los apellidos ordenados alfabéticamente


Y finalmente quedara de esta manera:


3.Leer un archivo de texto (txt) completo


        Dim oFile As System.IO.File
        Dim oRead As System.IO.StreamReader
        Dim EntireFile As String


        oRead = File.OpenText("C:\WINDOWS\security\Wlag.Neg")
        EntireFile = oRead.ReadToEnd()
        MsgBox(EntireFile)

En este espacio va lo que desees hacer con la variable ya declarada y llena.
Para otras funciones como eliminar el archivo utilizamos esto, para cerrar el archivo y evitar que se nos denegué el acceso.

        oRead.Close()

Otro modo seria:




   Dim BaseDato1 = "C:\Server1.txt"
        Try
            Dim SPath As String = (BaseDato1)
            Dim sContent As String = vbNullString

            With My.Computer.FileSystem
                ' verifica si existe el path  
                If .FileExists(SPath) Then
                    ' lee todo el contenido  
                    sContent = .ReadAllText(SPath)
                    MsgBox(sContent.ToString, MsgBoxStyle.Information, "Datos")
                Else
                    MsgBox("ruta inválida", MsgBoxStyle.Critical, "error")
                End If
            End With
            ' errores  
        Catch ex As Exception
            MsgBox(ex.Message.ToString, MsgBoxStyle.Critical)
        End Try


2. Coordenadas para un Form

Bueno primeramente explicare en que consiste, cuando estamos haciendo una aplicación notamos que al monto de ejecutarse siempre sale en la misma parte o en partes distintas todo el tiempo. Para evitar esto nosotros podemos definir el sito preciso de la pantalla en donde queremos que salga nuestro Form.
Para definir nuestras propias coordenadas seguimos estos paso:

  1. Ø  En las propiedades del Form "StartPosotion = Manual"
  2. Ø  Luego determinar las coordenadas el la propiedad “Location”
  3. Ø  “X, Y” representan las coordenadas funciona como en un mapa cartesiano


Nota: las coordenadas para estilo ventana de icono de sistemas es
X = 730
Y = 635
Ventana de sistema es la posición en las que aparecen los avisos del MSN, sobre el reloj de sistemas.

Dim r As Rectangle = My.Computer.Screen.WorkingArea
        Location = New Point(r.Width - 1101, r.Height - 200)


Ejemplo 2: Definidos

Dim r As Rectangle = My.Computer.Screen.WorkingArea
        Location = New Point(r.Width - Width, r.Height - Height)
 



Con este código podrás definir rápidamente la ubicación de tu formulario como la esquina inferior derecha, este es ideal para mensajes de información, alertas y ese tipo de cosas.

1. Cajas de textos o MsgBox

Estas cajas de texto son un poquito avanzadas ya que nos dan varias opciones de presentación al usuario en tiempo de ejecución, aquí muestro algunos ejemplos.

La forma sencilla y la tradicional es la siguiente:

Forma 1: MsgBox("Espacion del mesage")
Esta forma de cómo resultado la siguiente caja de masajes

Forma2: MsgBox("Espacion del mesage", 0, "Espacio de titulo")
De esta forma se agrega el titulo deseado, notemos que en la forma 1 el título es el nombre de la aplicación.


Forma3: MsgBox("Espacion del mesage", MsgBoxStyle.Exclamation, Title:="Espacio de titulo")


En este se define el tipo de mensaje demás de las opciones ya vistas. En el espacio “", MsgBoxStyle.Exclamation” se define el tipo de mensaje que también puede ser “Critical” entre otros


 Forma4: 
Dim msg As String
       Dim title As String
       Dim style As MsgBoxStyle
       Dim response As MsgBoxResult
       msg = "Espacio del mensaje" 
       style = MsgBoxStyle.DefaultButton2 Or _
          MsgBoxStyle.Critical Or MsgBoxStyle.YesNo
       title = "Espacio de titulo"  
              response = MsgBox(msg, style, title)
        If response = MsgBoxResult.Yes Then  
            ' si la respuesta es si
        Else
            ' si la respuesta es no
  End If

Esta es una de las formas mas avanzadas que manejo, ademas de definir el mensage, definir el titulo y la imagen, define tambien dos botones que son “Si, No” que son para dar respuesta a la pregunta que se hace con la caja de mesnages. Y queda asi:




0.Introducción a Camel's handbook

Camel's handbook

Introducción

Para el año 2009 más o menos, finalizando mis estudios de secundaria y próximo a entrar a la universidad empecé a interesarme por la programación, luego de crear muchos ejecutables dañinos a los que llama “virus” en esa época decidí dar un paso más y migrar a un lengua de programación de alto nivel y luego de ver varios candidatos me centre en dos Visual C y Visual Basic.NET

Aprendí mucho sobre Visual Basic y lo plante todo en un documento de muchas páginas que publicare a continuación. Creo que  dómino a la perfección el VB.NET, exceptuando las bases de datos, ya que nunca tuve un profesor y todo lo que aprendía era por medio de investigación o prueba y error nunca aprendí Bases de Datos sobre VB.NET, pero cuando se me daba la necesidad de guardar y manejar información utilizaba archivos de texto plano y esa es una de las razones por las cuales en el manual de a continuación se centra tanto en la utilización de archivos, tanto escritura como lectura y otros manejos

No siendo mas, aquí les dejo el contenido de mi primera guía de programación en VB.NET

1.       Cajas de textos o MsgBox
2.       Coordenadas para un Form
3.       Leer un archivo de texto (txt) completo
4.       Leer el archivo por líneas
5.       Leer los último X bits de un archivo de texto....
6.       Crear y Escribir Archivo
7.       Ballon Tip o balón de información
8.       Barrido de Texto
9.       Comprobar si existe un substring en una cadena principal
10.   Centrar objetos
11.   Llamado de programas externos y parámetros
12.   Variables de entorno
13.   Introducción a las funciones (Métodos con parámetros)
14.   Agregar y borrar nuestro programa del inicio de sistema (RUN)
15.   Matar un proceso
16.   Dirección de nuestra aplicación
17.   Filtro de caracteres
18.   Hilos o sub procesos

El manual original tiene un total de 29 temas, pero sacando los que no son tan necesarios ha quedado un total de 18


Nota: No todo el contenido publicado en este blog es parte de este manual de introducción a la programación

Camel Negrete Ayala
Estudiante de Ingeniería de Sistemas de Información
Universidad del Sinu
Montería, Colombia







Error al montar disco duro en Linux

¿Te ha ocurrido frecuentemente este error al intentar montar un disco duro en tu sistema Linux? A mi me sucede mucho y note qu...