Buscar en el Blog

viernes, 30 de diciembre de 2011

Crear portable con 7z


Crear un portable con 7z
En este tutorial vamos a ver empaquetar una aplicación, para que se comporte como portable.
Para que un programa sea portable, es necesario tener todos los archivos que la aplicación necesita, en la misma carpeta que el ejecutable. Por ejemplo:
PDF PASSWORD REMOVER



Ahora, para saber si están todos los archivos necesarios para que funcione nuestra aplicación, podemos usar una máquina virtual (es lo que yo uso y es la más seguro de probar si realmente funciona la aplicación), o usar cualquier programa para verificar las dependencias del programa que vamos a empaquetar (luego tendrá que probarlo en otra pc, es por eso que recomiendo la máquina virtual).
Cuando ya tenemos los archivos de nuestra aplicación, vamos a necesitar lo siguiente:
·         7z            http://www.7-zip.org/
·         Módulo 7zsfx   http://www.7zsfx.info/en/          www.7zsfx.info/en/files/715/7zSD.7z
·         Resource hacker (opcional) para modificar el icono del archivo creado. http://www.angusj.com/resourcehacker/

Procedimiento:
1.       Instalamos 7z
2.       Seleccionamos todos los archivos de nuestro programa (pdf remover) y le damos clic derecho.




3.       Seleccionamos añadir al archivo

4.       Nos aparecerá la siguiente pantalla

5 .  En tipo de compresión seleccionamos LZMA.


6.       Le damos clic en aceptar



7. Ya Tenemos nuestro archivo comprimido, ahora lo copiamos en el Disco C\:  , junto con el archivo 7zsd.sfx

8.       Creamos un archivo de texto llamado config.txt y lo grabamos en el mismo directorio que nuestro archivo comprimido C:\.

9.       El contenido del archivo de texto tendrá el siguiente:

;!@Install@!UTF-8!
InstallPath="%TEMP%\pdf"
GUIFlags="32"
ExtractTitle="PDF"
ExtractDialogText="Cargando..."
ExecuteFile="%TEMP%\pdf\winDecrypt.exe"
;!@InstallEnd@!

Nota: Grabarlo con formato UFT8

InstallPath=: Ruta donde se descomprime el contenido del auto-extraíble. Utilizamos la variable del sistema %TEMP% (directorio temporal del sistema operativo windows). GUIFlags=: Opciones especiales. 32 muestra el icono en la ventana, 8 usa estilos de XP, 4 muestra el porcentaje numérico debajo de la barra de progreso, etc...
ExtractTitle=: Sirve para especificar el título de la ventana de extracción.
ExtractDialogText=: Muestra un texto en la ventana de extracción.
ExecuteFile=: Fichero a ejecutar una vez termina la extracción de datos.

Podemos encontrar más información en el siguiente enlace.
http://www.7zsfx.info/en/

10.   Ya tenemos lo necesario para crear nuestro portable, verificamos si nuestros tres archivos están en el mismo directorio.
  •  El archivo comprimido, en mi caso lo puse PDF
  • El archivo config.txt
  •  El archivo 7zsd.sfx

11.   Ahora nos vamos al botón inicio/ejecutar y ponemos cmd para abrir la ventana de consola(símbolo del sistema)



Nos ubicamos en el directorio donde tenemos nuestros archivos C:\

13.   Ahora digitamos lo siguiente copy /b 7zsd.sfx + config.txt + pdf.7z   portable.exe


Donde pdf.7z es el archivo que habíamos comprimido, portable.exe es el archivo a crear (pueden colocar cualquier nombre).

14.   Clic en enter y se creara el archivo pdf.exe

      Nos dirigimos hacia la ubicación donde habíamos copiado nuestros archivos

Confirmamos que el archivo ha sido creado con éxito.
16.   Siguiente paso Probarlo!!!, usare una máquina virtual, copiare el archivo creado en mi maquina virtual, donde tengo instalado el Windows 2003 server.


17.   Ejecutamos la aplicación



Y la aplicación funciona!! Sin necesidad de instalar nada.

  

PDF Password Remover Portable

Descripcion del Programa:
Aquellos usuarios que trabajan habitualmente con ficheros PDF más de una vez se encuentran con impedimentos que no le permiten editar o ni tan siquiera imprimir un documento PDF por estar demasiado restringido.

PDF Password Remover te permite desencriptar ficheros PDF que se encuentren protegidos por contraseñas (tanto passwords de usuario como de autor o propietario). Dichas contraseñas evitan que el contenido del fichero pueda ser seleccionado para ser copiado, editado o imprimido.

Además, PDF Password Remover permite trabajar en lotes lo cual agiliza tu trabajo considerablemente si son muchos los ficheros PDF que quieres desencriptar.




lunes, 19 de diciembre de 2011

Google App Inventor desaparece y se libera

El equipo de soporte de App Inventor, informa que este proyecto no ha cuajado demasiado o las expectativas de Google no han sido las esperadas. Y es que el 31 de diciembre de 2011 los datos que tengamos en appinventorbeta.com dejarán de ser accesibles y se borrarán de los servidores de Google.
Para poder tener una copia de nuestros proyectos, simplemente haciendo click en Download All Projects desde nuestra página de proyectos, descargaremos un archivo comprimido con todos nuestros proyectos. Desde el equipo de Google recomiendan hacer esto cuanto antes, recordad que quedan apenas dos meses para el cierre definitivo.

Bien, no todo iba a ser negativo en esta entrada, y es que al finalizar este soporte, van a liberar el fuente de App Inventor con licencia MIT o similar, con lo que las posibilidades que son nos abren son innumerables, y las mejoras por la comunidad no tardarán en aparecer.

Fuente: http://www.linuxhispano.net/

Tesis: Patrones de Diseño de Arquitecturas de Software Enterprise

 Patrones de Diseño de Arquitecturas de Software Enterprise

Tesis: Patrones de Diseño de software utilizando la plataforma NET

Patrones de Diseño de software utilizando plataforma NET
2007

Manual autoinstructivo SIAF -2009

INTRODUCCIÓN
En 1997 el Ministerio de Economía y Finanzas-MEF inició el desarrollo del proyecto "Sistema Integrado de Administración Financiera del Sector Público- SIAF-SP", como un sistema asociado a la ejecución del presupuesto anual, con el objetivo de mejorar la gestión de las finanzas públicas, mediante el registro único de las operaciones de ingresos y gastos de las unidades ejecutoras del Sector Público y permitir la integración de los procesos presupuestarios, contables y de tesorería. El módulo SIAF-SP permite que los datos de ejecución sean ingresados adecuadamente por cada unidad ejecutora, transmitidos y registrados en el MEF.

En la medida en que los procesos de este tipo no ingresen en la profundidad de la trama del funcionamiento de las organizaciones públicas, cambiando sustantivamente los procesos de  asignación y uso de los recursos públicos, privilegiando los conceptos de eficiencia, eficacia y economía; en que no se modifique la gestión tradicional de administración de insumos; y cuando  se considera que todo se soluciona con una moderna aplicación informática, se estará  efectivamente ante una nueva moda.

La concepción amplia de administración financiera implica definirla como un conjunto de elementos administrativos de las organizaciones públicas que hacen posible la captación de recursos y su aplicación a la concreción de los objetivos y las metas del sector público en la forma más eficaz y eficiente posible. El Sistema Integrado de Administración Financiera en Perú, es una realidad hoy en día. No obstante es necesario ponderar su potencial por cuanto “los mejores sistemas de información no garantizan mejores decisiones de política económica y financiera pero hace menos probables los errores de apreciación y pueden ayudar a las autoridades políticas a llegar a decisiones apropiada. 
 

Guia del derecho de software y fuentes abiertas pdf

 Guia del derecho de software y fuentes abiertas

CAPÍTULO 1: INTRODUCCIÓN 6
  • 1.1. OBJETIVOS DE LA GUÍA 6
  • 1.2. EL SOFTWARE DE FUENTES ABIERTAS 7
  • 1.2.1. Las libertades del software 7
  • 1.2.2. El software de fuentes abiertas 8
  • 1.2.3. El copyleft 10
  • 1.3. LOS EFECTOS DEL SFA Y EL CONCEPTO DE “COMUNIDAD” 11
  • 1.4. ORGANIZACIÓN DE LA GUÍA Y GLOSARIO 12
CAPÍTULO 2: LAS LICENCIAS DE SOFTWARE DE FUENTES ABIERTAS 15
  • 2.1. INTRODUCCIÓN: LA LICENCIA DE SOFTWARE 17
  • 2.1.1. Licencias no libres o privativas 18
  • 2.1.2. Licencias de SFA 19
  • 2.2. TIPOS DE LICENCIA 20
  • 2.2.1. Licencias permisivas o académicas 21
  • 2.2.2. Licencias con copyleft fuerte 22
  • 2.2.3. Licencias mixtas o con copyleft suave 23
  • 2.3. SEIS LICENCIAS DE SOFTWARE DE FUENTES ABIERTAS 25
  • 2.3.1. La licencia Berkeley Software Distribution (BSD modificada) 25
  • 2.3.2. La Apache Software License 2.0 (ASL) 26
  • 2.3.3. La GNU General Public License (GPL) 27
  • 2.3.4. La Lesser GPL (LGPL) 31
  • 2.3.5. La Mozilla Public License (MPL) 32
  • 2.3.6. La European Union Public License (EUPL) 33
  • 2.4. COMENTARIOS FINALES 34
CAPÍTULO 3: LAS LICENCIAS DE SFA EN LA PRÁCTICA 35
  • 3.1. INTRODUCCIÓN 37
  • 3.2. TRABAJAR CON LICENCIAS DE SFA 37
  • 3.2.1. La compatibilidad entre licencias de SFA 37
  • 3.2.2. La selección de una licencia 40
  • 3.2.3. Régimen de licencia dual 43
  • 3.3. VALIDEZ DE LAS LICENCIAS DE SFA Y OTRAS CUESTIONES JURÍDICAS 45
  • 3.3.1. La cesión de derechos bajo licencia de SFA ¿es una renuncia? 45
  • 3.3.2. ¿Las licencias SFA crean obligaciones vinculantes, a modo de contrato? 45
  • 3.3.3. ¿Las condiciones establecidas por las licencias de SFA son válidas? 47
  • 3.3.4. ¿Cómo hacer cumplir las obligaciones de la licencia? 48
  • 3.3.5. ¿Hasta qué punto un proveedor de SFA debe dar garantías y asumir responsabilidades
  • ante los usuarios? 49
CAPÍTULO 4: EL USUARIO DE SOFTWARE DE FUENTES ABIERTAS 51
  • 4.1. EL USO DE SFA POR PARTE DE LAS ORGANIZACIONES E INDIVIDUOS 53
  • 4.2. ASPECTOS COMUNES 53
  • 4.2.1. Las libertades de uso 53
  • 4.2.3. La independencia frente al proveedor 55
  • 4.2.4. Patentes de software 55
  • 4.3. ASPECTOS PARTICULARES 56
  • 4.3.1. Individuos y SFA 56
  • 4.3.2. Empresas y organizaciones 57
  • 4.3.3. El sector público 63
  • 4.4. DOS TEMAS FUNDAMENTALES: EL COPYLEFT Y LAS GARANTÍAS SOBRE SFA 66
  • 4.4.1. El copyleft 66
  • 4.4.2. Garantías sobre SFA 68
CAPÍTULO 5: PROYECTOS DE CREACIÓN FOSS 69
  • 5.1. PROYECTOS DE SOFTWARE DE FUENTES ABIERTAS 71
  • 5.2. CASO 1: EL PROYECTO BÁSICO 72
  • 5.2.1. El desarrollo 73
  • 5.2.2. La liberación 76
  • 5.3. CASO 2: UN PROYECTO QUE USA COMPONENTES DE SFA 77
  • 5.3.1. El uso de SFA de terceros 79
  • 5.3.2. La redistribución de componentes de SFA 82
  • 5.4. CASO 3: UN PROYECTO MADURO CON CONTRIBUCIONES 84
  • 5.5. LA LIBERACIÓN DEL SOFTWARE: UN CHECKLIST 86
  • 5.6. EJEMPLOS DE PROYECTOS SFA 88
  • 5.7. COMENTARIOS FINALES 93
CAPÍTULO 6: INTEGRAR SFA 94
  • 6.1. LA COMERCIALIZACIÓN DE SOFTWARE Y SERVICIOS BASADOS EN SFA 96
  • 6.2. PRINCIPALES ASPECTOS JURÍDICOS 97
  • 6.2.1. Beneficios fundamentales 98
  • 6.2.2. Interrogantes 99
  • 6.2.3. El uso de componentes de software libre y de fuentes abiertas 100
  • 6.2.4. Licencias de distribución 102
  • 6.2.5. Garantías y responsabilidades 103
  • 6.2.6. El contrato basado en SFA 104
  • 6.3. EL USO DE SOFTWARE BAJO LA GPL: UN CHECKLIST 106
  • 6.4. CASOS DE ESTUDIO 107
CAPÍTULO 7: LOS DERECHOS DE AUTOR 111
  • 7.1. LAS FORMAS DE PROTECCIÓN JURÍDICA DEL SOFTWARE 113
  • 7.2. LA PROTECCIÓN POR DERECHOS DE AUTOR 113
  • 7.3. EL OBJETO DE PROTECCIÓN Y SUS TITULARES 114
  • 7.3.1. El software como obra sujeta de protección 115
  • 7.3.2. Los autores y titulares del software 117
  • 7.3.3.Tipos de obras 119
  • 7.4. LOS DERECHOS DE LOS TITULARES, SUS LÍMITES Y CESIONES 120
  • 7.4.1. Los derechos de autor del software 120
  • 7.4.2. Limites a los derechos de autor 122
  • 7.4.3. La cesión de derechos de autor: la licencia de software 123
  • 7.5. LAS MEDIDAS DE PROTECCIÓN JURÍDICA 124
  • 7.6. LOS DERECHOS DE AUTOR Y EL SFA 124


CAPÍTULO 8: OTRAS NORMAS APLICABLES 126
  • 8.1. EL DERECHO DE LA PROPIEDAD INDUSTRIAL 128
  • 8.2. EL DERECHO DE LAS PATENTES 128
  • 8.2.1. La patente 129
  • 8.2.2. Invenciones patentables y obtención de patentes 129
  • 8.2.3. Las patentes de software 131
  • 8.2.4. Los riesgos de la patente de software 133
  • 8.3. EL DERECHO DE LAS MARCAS 134
  • 8.3.1. La obtención de marcas 135
  • 8.3.2. Derechos y obligaciones de una marca y su cesión 136
  • 8.3.3. Marcas y software de fuentes abiertas 137
  • 8.4. EL DERECHO DE LOS SECRETOS INDUSTRIALES 138
  • 8.4.1. Protección jurídica del secreto 138
  • 8.4.2. Secretos industriales y software de fuentes abiertas

Tesis: Seguridad en Informatica - Auditoria de Sistemas

Tesis: Seguridad en Informatica - Auditoria de Sistemas
maestro en ingenieria de sistemas empresariales
2005

pass: http://infotutoriales.blogspot.com/

Tesis: sistema de administracion de informacion basado en Intranet

Tesis: Analisis, diseño e implementacion de un sistema de administracion de informacion basado en  Intranet
Ingeniero en computacion -2004

miércoles, 7 de diciembre de 2011

Validar RUC - SUNAT PERU en VB.net

Basado en el ejemplo de JhofranSoft 
 Algoritmo de Validación del RUC


Lo que modifique del codigo original es que puse todo lo concerniente a la validacion del ruc en una clase, de esa manera solo agregan la clase a su proyecto  y llaman a la funcion de validar el ruc y listo!


La clase
  1. Public Class ValidarRuc
  2. Public Shared Function validarRuc(ByVal ruc As String) As Boolean
  3. If VAL_RUC(ruc) = False Then
  4. Return False
  5. End If
  6. Return True
  7. End Function
  8. 'Ejm:
  9. 'RUC = 10254824220
  10. 'FACTOR = 5432765432
  11. 'Se separa los 10 primeros digitos de la izquierda y se hace un calculo inividual
  12. '1 * 5 =5
  13. '0 * 4 = 0
  14. '2 * 3 = 6
  15. '5 * 2 = 10
  16. '4 * 7 = 28
  17. '8 * 6 = 48
  18. '2 * 5 = 10
  19. '4 * 4 = 16
  20. '2 * 3 = 6
  21. '2 * 2 = 4
  22. 'Se suma el resultado de todas las multiplicaciones
  23. 'SUMA = 133
  24. 'Se calcula el residuo de la division por 11
  25. '133/ 11 = 1
  26. 'RESIDUO = 1
  27. 'Se resta 11 menos el residuo
  28. '11 - 1
  29. 'RESTA = 10
  30. 'digito de chequeo = RESTA
  31. 'si resta = 10 entonces digito de cheque = 0
  32. 'si resta = 11 entonces digito de cheque = 1
  33. 'RUC 10254824220 es valido por que su digito numero 11 es 0 y el digito de chekeo es 0.
  34. Private Shared Function LeftC(ByVal str As String, ByVal Length As Integer) As String
  35. Dim LenT As Integer = str.Length
  36. If LenT <= Length Then
  37. Return str
  38. Else
  39. Return str.Substring(0, Length)
  40. End If
  41. End Function
  42. Private Shared Function RightC(ByVal str As String, ByVal Length As Integer) As String
  43. Dim LenT As Integer = str.Length
  44. If LenT <= Length Then
  45. Return str
  46. Else
  47. Return str.Substring(LenT - Length)
  48. End If
  49. End Function
  50. Private Shared Function VAL_RUC(ByVal ruc As String) As Boolean
  51. Dim FACTOR() As Integer = {5, 4, 3, 2, 7, 6, 5, 4, 3, 2}
  52. Dim suma As Integer = 0
  53. 'ERROR SI NO ES NUMERO
  54. If Not IsNumeric(ruc) Then
  55. Return False
  56. End If
  57. 'ERROR SI NO CUMPLE LOS 11 DIGITOS
  58. If ruc.Length <> 11 Then
  59. Return False
  60. End If
  61. 'ERROR SI NO TIENE LOS 2 PRIMEROS DIGITOS
  62. '10 persona natural.
  63. '20 persona juridica.
  64. '17 o 15 extranjeros
  65. Dim VAL_DIGIT() As String = {"20", "17", "15", "10"}
  66. Dim DIGIT As String = LeftC(ruc, 2)
  67. Array.Sort(VAL_DIGIT)
  68. If Array.BinarySearch((VAL_DIGIT), DIGIT) < 0 Then
  69. Return False
  70. End If
  71. For I = 0 To ruc.Length - 2
  72. suma += Integer.Parse(ruc.Substring(I, 1)) * FACTOR(I)
  73. Next
  74. Dim residuo As Integer = suma Mod 11
  75. Dim resta As Integer = 11 - residuo
  76. Dim digChk As Integer
  77. If resta = 10 Then
  78. digChk = 0
  79. ElseIf resta = 11 Then
  80. digChk = 1
  81. Else
  82. digChk = resta
  83. End If
  84. If digChk = RightC(ruc, 1) Then
  85. Return True
  86. Else
  87. Return False
  88. End If
  89. End Function
  90. End Class

Luego solo llamamos a la funcion para validar

  1. If ValidarRuc.validarRuc(txtruc.Text) = True Then
  2. MessageBox.Show("Valido", "Exito", MessageBoxButtons.OK, MessageBoxIcon.Information)
  3. Else
  4. MessageBox.Show("Invalido", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error)
  5. End If





Generar codigo de barras en vb.net

Codigo basado en
http://www.elguille.info/colabora/NET2006/Marckys_BarCode.htm




Para esta aplicacion necesitaremos:
1 label llamado lblcodigo
1 textbox llamado txtcodigo
1 boton


codigo fuente completo


  1. Imports System.Drawing.Text
  2. Partial Public Class MainForm
  3. Dim fuente As Font
  4. Public Sub New()
  5. ' The Me.InitializeComponent call is required for Windows Forms designer support.
  6. Me.InitializeComponent()
  7. ' TODO : Add constructor code after InitializeComponents
  8. Sub MainFormLoad(ByVal sender As Object, ByVal e As EventArgs)
  9. End Sub
  10. Public Sub cargarfuente()
  11. Dim pfc As PrivateFontCollection = New PrivateFontCollection()
  12. Dim fontFamily As FontFamily
  13. 'Obtenemos la fuente que se encuentra en el directorio de la aplicacion
  14. 'y la cargamos
  15. pfc.AddFontFile(my.Application.Info.DirectoryPath & "\BARCODE.TTF")
  16. fontFamily = pfc.Families(0)
  17. fuente = New Font(fontFamily, 50)
  18. End Sub
  19. Public Function FormatoCodigoBarras(ByVal code As String) As String
  20. Dim barcode As String = String.Empty
  21. barcode = String.Format("{0}", code)
  22. Return barcode
  23. End Function
  24. Sub Button1Click(ByVal sender As Object, ByVal e As EventArgs)
  25. cargarfuente()
  26. lblCodigo.Font = fuente
  27. lblCodigo.Text = FormatoCodigoBarras(txtCodigo.Text)
  28. End Sub
  29. End Class
  30.  



    martes, 6 de diciembre de 2011

    Sqlite Manager Firefox

    Para los usuarios y Firefox y que desean usar SQLITE tienen la siguiente alternativa:

    El complemento Sqlite Manager, el cual pueden instalarlo de la siguiente direccion.

    https://addons.mozilla.org/en-US/firefox/addon/sqlite-manager/





    VB.NET Recorrer menus

    Saludos a todos ustedes estimados lectores, en esta ocacion quiero compartir este fragmento de codigo que encontre en internet, con el cual podemos recorrer los menus de una ventana y de esa manera poder manipular sus propiedades.
    ¿Para que puede ser util esto?, bueno puede ser util para dar los respectivos privilegios o restricciones a un usuario.



    El codigo en si es el que sigue


     Public Sub RecorrerNivelesAltos(byval opcion as Boolean)
            For Each M As ToolStripMenuItem In me.menuStrip1.Items

                m.Enabled=opcion
                Me.RecorrerSubMenuNivelesAltos(M,opcion)
            Next
        End Sub

        Public Sub RecorrerSubMenuNivelesAltos(ByVal M As ToolStripMenuItem,byval opcion as Boolean)
            For Each SubMenu As ToolStripMenuItem In M.DropDownItems
              
               submenu.Enabled=opcion
                Me.RecorrerSubMenuNivelesAltos(SubMenu,opcion)
            Next
        End Sub

    En el procedimiento RecorrerSubMenuNivelesAltos, hacemos uso de la recursividad.

    lunes, 5 de diciembre de 2011

    Encriptar un password con SQL Server

    Saludos a todos los seguidores de este blog!.
    Muchas veces necesitamos encriptar es password de nuestra aplicacione en la base de datos, es decir que el campo donde almacenamos el password(contraseña) no este como simple texto, si no que este valor no sea legible.

    Para eso podemos usar lo siguiente:
    Pwdencryp() y Pwdcompare() 
    Estas son dos funciones de sql server, la primera sirve para encriptar y la segunda sirve para comparar el password con la cadena encriptada.

    Por ejemplo si colocamos lo siguiente en el analizador de consultas:

    select pwdencrypt('lexblas')

    nos arrojara el siguiente valor

    0x0100D101C65D0C4F2A6714337E7E9E7CCD88C9583C9428B2E9A2

    El valor anterior es nuestro password encriptado.

    Ahora para comparar nuestro password ingresado con el que tenemos en la base de datos, hacemos lo siguiente:

    select pwdcompare ('lexblas',0x0100D101C65D0C4F2A6714337E7E9E7CCD88C9583C9428B2E9A2)

    donde: El primer argumento es el password en texto, el cual estamos ingresando en nuestra ventana de inicio de sesion y el segundo parametro es el password encriptado.


    El campo donde se almacenara el password debe ser del tipo varbinary.
    Por ejemplo:


    create table passwords
    (
    usuario varchar(15),
    password varbinary(255)
    )



    Para validar el usuario, pueden crear un procedimiento almacenado que haga el trabajo.
    Tambien hay otra alternativa.






    create proceduresp_verificarUsuario @usuario varchar(15),@pass varchar(15),@r int output
    as
    if exists (select * from usuario where usuario=@usuario and 1 = pwdcompare(@pass,password))
    set @r=1

    else
    set @r=0
    Si el password concuerda con el que esta en la base de datos devolvera el valor de 1, de caso contrario cero.


    SQL 2005 nos da otra posibilidad de realizar una encriptación de datos para campos de la base de datos. Tiene una función para ello: HashBytes.

    A esta función, simplemente se le pasan como parámetros el algoritmo de encriptación (que pueden ser MD2, MD4, MD5, SHA, SHA1) y la cadena (o variable) a encriptar, devolviendo el valor encriptado para el algoritmo usado.

    Un ejemplo:

    DECLARE @myCrypVar varchar(max);
    SELECT @myCrypVar = CONVERT(varchar,'cadena a encriptar');
    SELECT HashBytes('SHA1', @myCrypVar);
     
    Resultado: 0x548C29B27BC6750A11E0D97E9ED16D4B32DBE7FF

    Esto tambien se puede implementar como el ejemplo anterior.

    jueves, 1 de diciembre de 2011

    PowerBuilder: Aplicacion para Registrar Clientes -> Exe + Codigo Fuente


    Aplicacion desarrollada en PowerBuilder 11.5 con bd en Acces, usando datawindows.
    Util para aquellos que deseen ver como desarrollar ventanas de mantenimiento en powerbuilder con datawindows.

    exe con las librerias necesarias para correr la aplicacion(no necesita instalar el powerbuilder)
    codigo fuente 


    Clases online a buen precio!!
    pass del archivo rar:  http://infotutoriales.blogspot.com/