elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Guía actualizada para evitar que un ransomware ataque tu empresa


  Mostrar Mensajes
Páginas: 1 ... 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 [40] 41 42 43 44 45 46 47 48 49 50 51 52 53
391  Programación / Programación Visual Basic / Re: Acceso directo en: 7 Noviembre 2006, 14:33 pm
estos son unos ejemplos que vienen el la pag de "El Guille" (http://www.elguille.info/vb/ejemplos/crear_links.htm)


' Crear accesos directos usando DDE ------
Option Explicit

Private Sub cmdCrear_Click()
    ' Crear el acceso directo                                       
   ' Se creará dentro de Programas del Menú de Inicio
    '
    CrearIconoEnProgMan Me, Text2.Text, Text1.Text
End Sub

Private Sub cmdSalir_Click()
    ' Salir del programa
    Unload Me
End Sub


'----------------------------------------------------------
' Procedure: CrearIconoEnProgMan
'
' Arguments: X           The form where Label1 exists
'
'            CmdLine$    A string that contains the command
'                        line for the item/icon.
'                        ie 'c:\myapp\setup.exe'
'
'            IconTitle$  A string that contains the item's
'                        caption
'----------------------------------------------------------
Private Sub CrearIconoEnProgMan(X As Form, CmdLine$, IconTitle$)
   
    Dim i As Integer, z As Integer
   
    Screen.MousePointer = 11
    ' Poner la primera letra en mayúsculas
    IconTitle$ = Left$(IconTitle$, 1) & LCase$(Mid$(IconTitle$, 2))
   
    '----------------------------------------------------------------------
    ' Windows requires DDE in order to create a program group and item.
    ' Here, a Visual Basic label control is used to generate the DDE messages
    '----------------------------------------------------------------------
    On Error Resume Next
   
    '---------------------------------
    ' Set LinkTopic to PROGRAM MANAGER
    '---------------------------------
    X.Label1.LinkTopic = "ProgMan|Progman"
    X.Label1.LinkMode = 2
    For i = 1 To 10         ' Loop to ensure that there is enough time to
      z = DoEvents()        ' process DDE Execute.  This is redundant but needed
    Next                    ' for debug windows.
    X.Label1.LinkTimeout = 100
   
    '------------------------------------------------
    ' Create Program Item, one of the icons to launch
    ' an application from Program Manager
    '------------------------------------------------
    X.Label1.LinkExecute "[AddItem(" & CmdLine$ & Chr$(44) & IconTitle$ & Chr$(44) & ",,)]"
   
    '-----------------
    ' Reset properties
    '-----------------
    X.Label1.LinkTimeout = 50
    X.Label1.LinkMode = 0
   
    Screen.MousePointer = 0
End Sub



'-----------------------------------------------------------------------' Crear accesos directos usando WHS                                 Option Explicit

Private m_wsShell As Variant

Private Sub cmdCrear_Click()
    Dim sLnkPath As String
    Dim sLink As String
    Dim sAppPath As String
    Dim vLnk As Variant
   
    sAppPath = Text2
    sLink = Text1
    If InStr(sLink, ".lnk") = 0 Then
        sLink = sLink & ".lnk"
    End If
    ' Crearlo en el escritorio:
    'sLnkPath = m_wsShell.SpecialFolders("Desktop")
    '
    ' Crearlo en el indicado en el listbox
    ' Aunque siempre lo crea en el mismo sitio:
    ' C:\WINDOWS\All Users\Desktop
    ' es decir en el escritorio.
    '
    ' Pero eso era usando TEXT3 a secas,
    ' añadiendo el .Text ya si que sale lo que debe salir...
    '
    sLnkPath = m_wsShell.SpecialFolders(Text3.Text)
    sLnkPath = sLnkPath & "\" & sLink
   
    ' Crear el acceso directo
    Set vLnk = m_wsShell.CreateShortcut(sLnkPath)
    vLnk.Targetpath = sAppPath
   
   
    ' definir directorio de trabajo
    vLnk.WorkingDirectory = "D:\gsCodigo" ' Escribe aquí el directorio
    '--------------------------------------------------------------------------
    '
    vLnk.Save
End Sub

Private Sub cmdSalir_Click()
    ' Salir del programa
    Unload Me
End Sub

Private Sub Form_Load()
    Set m_wsShell = CreateObject("WScript.Shell")
   
    List1.Clear
   
    ' Llenar el listbox con los "folders" de SpecialFolders
    '
    'Dim vName As Variant

    ' (Este método es preferible si quieres mostrar todos las carpetas especiales)

    'For Each vName In m_wsShell.SpecialFolders
    '    List1.AddItem vName
    'Next
    '
    '
    ' Estos no son válidos para el W95
    List1.AddItem "AllUsersDesktop= " & m_wsShell.SpecialFolders("AllUsersDesktop")
    'List1.AddItem "AllUsersStartMenu= " & m_wsShell.SpecialFolders("AllUsersStartMenu")
    'List1.AddItem "AllUsersPrograms= " & m_wsShell.SpecialFolders("AllUsersPrograms")
    'List1.AddItem "AllUsersStartup= " & m_wsShell.SpecialFolders("AllUsersStartup")
    '
    List1.AddItem "Desktop= " & m_wsShell.SpecialFolders("Desktop")
    List1.AddItem "Programs= " & m_wsShell.SpecialFolders("Programs")
    List1.AddItem "StartMenu= " & m_wsShell.SpecialFolders("StartMenu")
    List1.AddItem "Startup= " & m_wsShell.SpecialFolders("Startup")
    List1.AddItem "MyDocuments= " & m_wsShell.SpecialFolders("MyDocuments")
    List1.ListIndex = 0
    '
End Sub

Private Sub Form_Unload(Cancel As Integer)
    Set m_wsShell = Nothing
End Sub

Private Sub List1_Click()
    ' Mostrar el destino del acceso directo
    Dim sTmp As String
    Dim i As Long
   
    sTmp = List1.List(List1.ListIndex)
    i = InStr(sTmp, "= ")
    If i Then
        Text3 = Left$(sTmp, i - 1)
    Else
        Text3 = "Desktop"
    End If
End Sub
392  Programación / Programación Visual Basic / Re: Crear copia de seguridad en: 7 Noviembre 2006, 14:27 pm
mira yo tengo algo parecido, solo que uso una base de datos del SQL

'Apis
'==================================
Public Declare Function GetShortPathName Lib "kernel32" Alias "GetShortPathNameA" (ByVal lpszLongPath As String, ByVal lpszShortPath As String, ByVal cchBuffer As Long) As Long

'PROCESOS
Public Declare Function OpenProcess Lib "kernel32" (ByVal dwDesiredAccess As Long, ByVal bInheritHandle As Long, ByVal dwProcessId As Long) As Long
Public Declare Function GetExitCodeProcess Lib "kernel32" (ByVal hProcess As Long, lpExitCode As Long) As Long
'PAUSA
Public Declare Function GetTickCount Lib "Kernel32.dll" () As Long

Public Const STILL_ACTIVE = &H103
Public Const PROCESS_QUERY_INFORMATION = &H400



Private Sub cmdRespaldo_Click()
    'Determinar el nombre de la base de datos
    Dim b As Long, strPath As String * 255
    Dim Archivo As String
   
    On Local Error Resume Next
   
    b = GetShortPathName(fbDir.Text, strPath, Len(strPath))
    strPath = Left$(strPath, b)
   
    If Trim(strPath) = "" Then
        MsgBox "Directorio no valido", vbCritical + vbOKOnly, App.EXEName
        Exit Sub
    End If
   
    GetAttr (Trim(strPath) & "Respaldo" & Format(Date, "ddMMyyyy") & ".zip")
    If Err.Number = 0 Then
        b = MsgBox("¿El archivo de respaldo ya existe, desea sobreescribirlo?", vbQuestion + vbYesNoCancel, App.EXEName)
        Select Case b
            Case 6 ' Si
                Archivo = Trim(strPath) & "Respaldo" & Format(Date, "ddMMyyyy")
            Case 7 ' No
                Archivo = InputBox("Teclee el nombre del archivo de respaldo (sin extensión).", "Crear Respaldo", "")
                If Trim(Archivo) = "" Then
                    Exit Sub
                Else
                    Archivo = Trim(strPath) & Archivo
                End If
            Case 2 ' Cancelar
                Exit Sub
        End Select
    Else
        Archivo = Trim(strPath) & "Respaldo" & Format(Date, "ddMMyyyy")
    End If
    'Exit Sub
    If AbrirBD(Acceso.LecturaEscritura) <> 0 Then Exit Sub
   
    'Crear respaldo de la base de datos
    On Local Error Resume Next
   
    lblProgres.Caption = "Creando copia de seguridad..."
    ProgressBar1.Value = 1
    DoEvents
   
    BD.Execute "BACKUP DATABASE [Indicadores] TO DISK = N'" & Archivo & ".bak ' " & _
               "WITH  NOINIT, NOUNLOAD, NAME = N'Respaldo" & Format(Date, "ddMMyyyy") & "', " & _
               "NOSKIP, STATS = 10, DESCRIPTION = N'Respaldo', NOFORMAT"
    DoEvents
    If Err Then
        MsgBox BD.Errors(0).Number & vbCrLf & BD.Errors(0).Description, vbCritical + vbOKOnly, App.EXEName
    Else
        ' Coomprimir la base de datos .bak
       
        lblProgres.Caption = "Comprimiendo archivo..."
        ProgressBar1.Value = 2
        DoEvents
       
        'Ejecuta el comando MSDOS
        ExeEspera "c:\archiv~1\winzip\winzip32.exe -a -r " & Archivo & ".zip " & Archivo & ".bak"
       
        lblProgres.Caption = "Borrando archivos temporales..."
        ProgressBar1.Value = 3
        DoEvents
       
        Kill Archivo & ".bak"
       
        lblProgres.Caption = "Proceso terminado"
        ProgressBar1.Value = 4
        DoEvents
       
    End If
   
    On Local Error GoTo 0
    CerrarBD
   
End Sub


Private Function ExeEspera(COMANDO As String)
    Dim hProcess As Long
    Dim RetVal As Long
    hProcess = OpenProcess(PROCESS_QUERY_INFORMATION, False, Shell(COMANDO, vbMinimizedNoFocus))
    Do
        GetExitCodeProcess hProcess, RetVal
        DoEvents
        Pausa 100
    Loop While RetVal = STILL_ACTIVE
End Function

393  Programación / Programación Visual Basic / Re: Duda en: 7 Noviembre 2006, 00:34 am
pues lo haces con una consulta SQL, un ejemplo:

Dim bd As Database
Dim tb As Recordset

Set bd = Workspaces(0).OpenDatabase("C:\Documents and Settings\USER\Escritorio\bd1.mdb")
Set tb = bd.OpenRecordset("SELECT * FROM tabla1" & _
                                        "WHERE User = '" & text1.text & "' " & _
                                         "AND Pass = " & text2.text & "';")

If tb.Recordcount > 0 then ' Encontro por lo menos un registro
     Unload me
     ElotroForm.show
end if

'No olvides cerrar la BD y liberar la memoria
tb.close
bd.close
set tb = nothing
set bd = nothing
394  Programación / Programación Visual Basic / Re: Duda en: 6 Noviembre 2006, 16:53 pm
primero para guardar datos en una BD lo haces con addnew

dim Bd as database
dim Tb as database

set bd = workspaces(0).opandatabase("c:\basededatos.mdb",Exclusivo, SoloLectura)
set tb = bd.openrecordset("tabla")

tb.addnew
tb!Usuario = txtUsuario.text
tb!Pass = txtpassword.text
tb.update

tb.close
bd.close

set tb = nothing
set bd = nothing


segundo
para lo del archivo, pues puedes idearte algun proceso que si tu le pones "usuario1" te guarde "A%S23$Q=WE(2" o algo asi, eso ya es custión de como lo quieras hacer.
395  Programación / Programación Visual Basic / Re: Listview ayuda plz... en: 6 Noviembre 2006, 16:26 pm
puedes poner la propiedad HideSeleccion a False, lo que hace esque cuando el control pierde el foco del sistema se pone en gris lo que habias seleccionado, ahora que si lo que quieres es hacer referencia al y ultimo renglon seleccionado pues puedes hacerlo asi:

Declaraciones generales
dim Itmx As MSComctlLib.ListItem


Private Sub lvwImp_ItemClick(ByVal Item As MSComctlLib.ListItem)
    Set Itmx = Item
End Sub
396  Programación / Programación Visual Basic / Re: Duda en: 4 Noviembre 2006, 22:05 pm
te recomiendo que primero veas temas relacionados con BD

Conectarse a una BD de Access en VB
http://foro.elhacker.net/index.php/topic,94263.msg442391.html#msg442391


aunque para mi seria mejor guardar la contraseña cifrada en un archivo
397  Programación / Programación Visual Basic / Re: LAN en: 3 Noviembre 2006, 19:23 pm
lo quieres copiar por medio de programación o directo desde windows?
398  Programación / Programación Visual Basic / Re: cargar imagenes en vb6 desde codigo? en: 2 Noviembre 2006, 03:00 am
puedes usar el LoadPicture


image1.picture = LoadPicture("c:\...\imagen")

399  Programación / Programación Visual Basic / Re: crear base de datos desde visual en: 31 Octubre 2006, 00:24 am
claro que se puede crear una BD, este es un ejemplo que viene en la pagina de el Guille http://www.elguille.info/VB/bases/indiceDAO.asp#db010


Private Sub CrearBase(sBase As String)
    'Crear la base de datos indicada
    '
    Dim Db As Database
    Dim Fd As Field
    Dim Tb As New TableDef      'Definir una Tabla
    Dim Idx As New Index        'Para crear un índice
    Dim i As Integer

    'Crear base de datos, idioma español y para la versión 2.0 del Jet de Access
    'Si vas a adaptar este programa para VB3, usa dbVersion11 en lugar de dbVersion20
    '================================================================================
    Set Db = CreateDatabase(sBase, dbLangSpanish, dbVersion20)
    '
    'La constante dbVersion20 no aparece en la ayuda, en su lugar lo hace la dbVersion25
    'pero ésa no está creada!!!
    '
    'Primero la tabla de las tareas
    Set Tb = Db.CreateTableDef("Tareas")
    'Vamos a crear cada uno de los campos
    Set Fd = Tb.CreateField("ID", dbLong)
    'Ahora vamos a asignar las propiedades de contador, etc.
    Fd.Attributes = dbAutoIncrField Or dbUpdatableField Or dbFixedField
    Tb.Fields.Append Fd
    'El resto de los campos
    Set Fd = Tb.CreateField("Fecha", dbDate)
    Tb.Fields.Append Fd
    Set Fd = Tb.CreateField("Asunto", dbText, 255)
    Tb.Fields.Append Fd
    Set Fd = Tb.CreateField("Descripcion", dbMemo)
    Tb.Fields.Append Fd
    Set Fd = Tb.CreateField("FechaInicio", dbDate)
    Tb.Fields.Append Fd
    Set Fd = Tb.CreateField("FechaTermino", dbDate)
    Tb.Fields.Append Fd
    Set Fd = Tb.CreateField("Terminada", dbInteger)
    Tb.Fields.Append Fd
    'Creamos un índice con el ID
    Idx.Name = "PrimaryKey"
    Idx.Unique = True
    Idx.Primary = True
    Idx.Fields = "ID"
    Tb.Indexes.Append Idx
    'Añadimos la tabla a la base
    Db.TableDefs.Append Tb
    '
    'Creamos la otra tabla: Anotaciones
    Set Tb = Db.CreateTableDef("Anotaciones")
    'El campo ID, es el contador, etc.
    Set Fd = Tb.CreateField("ID", dbLong)
    Fd.Attributes = dbAutoIncrField Or dbUpdatableField Or dbFixedField
    Tb.Fields.Append Fd
    'El resto de los campos
    Set Fd = Tb.CreateField("Fecha", dbDate)
    Tb.Fields.Append Fd
    Set Fd = Tb.CreateField("Tema", dbText, 50)
    Tb.Fields.Append Fd
    Set Fd = Tb.CreateField("Asunto", dbText, 255)
    Tb.Fields.Append Fd
    Set Fd = Tb.CreateField("Medio", dbText, 255)
    Tb.Fields.Append Fd
    Set Fd = Tb.CreateField("Localizacion", dbText, 255)
    Tb.Fields.Append Fd
    Set Fd = Tb.CreateField("Descripcion", dbMemo)
    Tb.Fields.Append Fd
    Set Fd = Tb.CreateField("Detalle", dbLongBinary)
    Tb.Fields.Append Fd
    'Creamos un índice con el ID
    Set Idx = Nothing           'Quitar la referencia anterior
    Idx.Name = "PrimaryKey"
    Idx.Unique = True
    Idx.Primary = True
    Idx.Fields = "ID"
    Tb.Indexes.Append Idx
    'Añadimos la segunda tabla a la base
    Db.TableDefs.Append Tb
    'Cerramos la base
    Db.Close

    MsgBox "Nueva base de datos " & sBase & " creada.", vbInformation
End Sub
400  Programación / Programación Visual Basic / Re: duda con poner un nombre a una cosa ^^ en: 31 Octubre 2006, 00:05 am
Todos los controles tienen una propiedad Caption o Text, en ellas puedes poner el texto que quieras, solo asegurate de que el tamaño del control sea el adecuado para mostrar todo el texto
Páginas: 1 ... 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 [40] 41 42 43 44 45 46 47 48 49 50 51 52 53
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines