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

 

 


Tema destacado: Arreglado, de nuevo, el registro del warzone (wargame) de EHN


  Mostrar Mensajes
Páginas: 1 ... 24 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 54 55
381  Programación / Programación Visual Basic / Re: Limitar decimales y winsock en: 29 Junio 2005, 03:54 am
La función Format sirve para eso:

Código:
      Dim sNumber$, dNumber#

  dNumber = 34324 / 1024

  sNumber = Format$(dNumber, "0.00")

Esa operación daría 33,51953125, pero con la función Format y esa cadena de formato lo reduciría a 33,52

Saludos.
382  Programación / Programación Visual Basic / Re: Como se hacen las barras tipo "Cargando"? en: 28 Junio 2005, 03:44 am
Si querés podés crear tu propio control ProgressBar de una forma muy fácil usando un PictureBox.

En un formulario poné un PictureBox con el nombre picProgress y un botón con el nombre cmdTest y pegá el siguiente código en el formulario.

Código:
Option Explicit

Private Sub IncreaseProgress(ByVal Value As Single, ByVal Max As Long)
          Dim snWidth!
         
  With picProgress
    snWidth = .Width / Max
   
    picProgress.Line (10, 10)-(snWidth * Value, .Height - 40), , BF
  End With
End Sub

Private Sub cmdTest_Click()
      Dim i%, snTime!

  For i = 1 To 100
    snTime = Timer
   
    Do While (Timer - snTime) < 0.25
      DoEvents
    Loop
   
    Call IncreaseProgress(i, 100)
  Next
End Sub

Asi se pueden personalizar los colores, fuente, etc.

Y BenRu ya deja de preguntar "cómo cómo y cómo", busca en google que hay muchos ejemplos y documentación sobre el control ProgressBar.

Saludos.
383  Programación / Programación Visual Basic / Re: Editarle el registro a otras maquinas de la LAN sin troyano?? en: 28 Junio 2005, 00:50 am
Mira la función RegConnectRegistry. Te conectas a una de las claves del registro de una máquina remota y luego usas las funciones locales con el handle que devuelve.

Saludos.
384  Programación / Programación Visual Basic / Re: Como sumar registros en: 26 Junio 2005, 11:53 am
Podrías hacer un bucle por todos los registros y usar una variable para sumar cada valor, vamos que es algo muy básico.

Por ej:

Código:
Function AddReg(csRecordset As Recordset, FieldIndex As Integer) As Long
        Dim lData&

  Call csRecordset.MoveFirst
 
  Do While Not csRecordset.EOF
    If IsNumeric(csRecordset(FieldIndex)) Then
      lData = lData + CLng(csRecordset(FieldIndex))
    End If
  Loop

  AddReg = lData
End Function

Busca un poco en google o en la documentación del control antes de prguntar.

Saludos.
385  Programación / Programación Visual Basic / Re: Gusano!! en: 26 Junio 2005, 08:09 am
No es tan dificil hacer un binder. Primero utilizas GetBinaryType para verificar que sea un archivo PE. Luego extraes el icono prederminado usando la función ExtractIcon y lo guardas.

Una vez hecho esto agregas el archivo que querés ocultar al final de tu ejecutable y guardas la posición de inicio en alguna parte de tu programa, podrías crear una sección nueva pero a menudo los AVs lo detectan :-\.

Para terminar le cambias el icono al programa usando las funciones BeginUpdateResource y UpdateResource.

También podrías cifrar el ejecutable que ocultas para que sea menos alevoso. Luego pongo un ejemplo de esto último.

Cabe destacar que es mucho más divertido hacer todo lo anterior pero leyendo directamente el ejecutable :P, sin usar las funciones de Windows. Por eso es muy necesario conocer la estructura que nombraba en un post anterior.

Saludos.
386  Programación / Programación Visual Basic / Re: Ayuda con enlaces a bases de datos en: 26 Junio 2005, 02:15 am
Podrías utilizar tabulaciones para separar los campos y ponerlo en un TextBox. Por ejemplo:

Código:
Sub ReadTable(csRecordset As Recordset)
          Dim sData$, i%
         
  Call csRecordset.MoveFirst
 
  Do While Not csRecordset.EOF
    For i = 0 To csRecordset.Fields.Count - 1
      sData = sData & csRecordset.Fields(i) & Chr$(9) & vbCrLf
    Next
   
    Call csRecordset.MoveNext
  Loop
 
  txtTable = sData
End Sub

Saludos.
387  Programación / Programación Visual Basic / Re: automatizacion en: 26 Junio 2005, 01:17 am
Podrías usar un control Timer que actualice la bd periódicamente.

Saludos.
388  Programación / Programación Visual Basic / Re: quiero hacer una ayuda como el que tiene office.. el clip ese :) en: 26 Junio 2005, 01:14 am
Hay un control que se llama Microsoft Agent Control 2.0. Si no me equivoco ya viene con VB así que sólo tenés que agregarlo desde el cuadro de Componentes.

Busca info sobre este control, no es tan dificil usarlo.

También existe un editor para crear los personajes pero tenés que tener las imágenes de todos los movimientos, acciones, etc.

Saludos.
389  Programación / Programación Visual Basic / Re: Gusano!! en: 26 Junio 2005, 01:10 am
I love you fue una verdadera maravilla pero en ese entonces los AVs no lo detectaban y por eso fue tan poderoso, hoy en día no se puede hacer nada en VBS que no detecten los AVs

Saludos.
390  Programación / Programación Visual Basic / Re: Al meter una secuencia de comandos el pc te responde con otra...Como? en: 26 Junio 2005, 01:03 am
i que quieres?.. que te den todo el robot hecho en una linea?...


No, pero supongo que tendra que aver algun metodo para abreviar

Insisto que crear un archivo de recursos y utilizar los Id para obtener los datos es una buena opción.

Por ejemplo vamos a suponer que desde el Id 100 al id 110 son saludos, y del 105 a 110 son saludos con un estado de ánimo deprimido. Entonces creamos las siguientes constantes:

Código:
Const MSG_GREET_BASE = 100  'Es el id base de los saludos.
Const MSG_GREET_CNT = 10  'Cantidad de saludos.
Const MSG_GREET_STATE1_BASE = 5  'Id base relativo a MSG_GREET_BASE de los saludos con el estado de ánimo 1 (supongamos que es deprimido)

Const ACTION_GREETINGS = 1  'Acción de saludar.

Const BOT_STATE_DEP = 1     'Estado deprimido.
Const BOT_STATE_HAPPY = 2   'Estado feliz.
Const BOT_STATE_ANGRY = 3   'Estado enojado.
Const BOT_STATE_NORMAL = 4  'Sin emociones :P

Luego se crea un procedimiento que reconozca todas las acciones y que la ejecute:

Código:

Private iCurState As Integer  'Variable de estado.

Private Sub PerformAction(Action as Integer)
  Select Case Action
    Case ACTION_GREETINGS
   
  End Select
End Sub

Function GetGreet(State As Integer) As String
           Dim iItem%, sMsg$

  Select Case State
    Case BOT_STATE_DEP: iItem = (MSG_GREET_BASE + MSG_GREET_STATE1_BASE) + _
                                (Rnd * (MSG_GREET_CNT - MSG_GREET_STATE1_BASE))
    Case BOT_STATE_NORMAL: iItem = (MSG_GREET_BASE + (Rnd * MSG_GREET_STATE1_BASE))
  End Select

  sMsg = LoadResString(iItem)

  GetGreet = sMsg
End Sub


Sólo es una idea, hay muchas formas más de hacerlo.

Saludos.
Páginas: 1 ... 24 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 54 55
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines