Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - TrashAmbishion

#201
Muchas gracias lo revisaré...

Salu2

Pd: Ya estoy a punto de poner a prueba el proyecto y quería saber (para cubrir dudas) que como obligatoriamente para poder jugar el juego tiene que ser a traves de mi programa tendría cierta ventaja como por ejemplo bloquear el proceso del juego para que nada mas que mi programa acceda a el, estuve mirando "mutex" pero creo que no tiene nada que ver, y lo otro es iniciarlo de forma que no se pudiera listar en los procesos como un rootkit, pero que la GUI si se mantuviera o cualquier otro invento

No obstante

El injector que estoy mirando, trae una función para oculta la DLL que injecta.. pero esa DLL requiere otra DLL que si se carga y ahi pita mi programa, pero pasa que hay programas que sirven para hacer capturas del juego o grabar incluso hasta el IDM a veces mete una DLL en las del juego..

Estaba pensado hacer una lista de las DLL que carga en un sistema virgen

y entonces de ahi ir partiendo revisar las que esten de mas, hacerle unload si hay algo sospechoso..

que crees ?

Salu2
#202
Resolví una posible variante del Snippet

http://stackoverflow.com/questions/15906479/execute-a-application-and-wait-for-it-to-be-loaded

Después reviso a mas profundidad pero hice una prueba rápida y funcionó, lo que me parece es que el programa mucho antes de que caer en un estado de tranquilidad ya hizo la carga todos los módulos que en mi caso con 100...

Salu2
#203
Hola,

Quería saber sobre el funcionamiento de este Snippet publicado por Elektro para esperar a que una aplicación termine de cargar..

Código (vbnet) [Seleccionar]


Timer_CheckCPU.Tag = "photoshop"          'Nombre del proceso a chequear
Timer_CheckCPU.Enabled = True
While Not Timer_CheckCPU.Tag = ""
         Application.DoEvents()
End While


#Region " Wait For Application To Load "

    Private Declare Function ReadProcessMemory Lib "kernel32" (ByVal hProcess As Integer, ByVal lpBaseAddress As Integer, ByVal lpBuffer As Integer, ByVal nSize As Integer, ByRef lpNumberOfBytesWritten As Integer) As Integer
    Private WithEvents Timer_CheckCPU As New Timer

    Dim Memory_Value_Changed As Boolean
    Dim CPU_Changed As Boolean
    Dim CPU_Time As Boolean
    Dim Running_Time As Boolean
    Private _desiredTime_ms As Integer = 1500

    Private Sub Timer_CheckCPU_Tick(sender As Object, ev As EventArgs) Handles Timer_CheckCPU.Tick
        Timer_CheckCPU.Enabled = False
        Dim pProcess() As Process = Process.GetProcessesByName(Timer_CheckCPU.Tag)
        Dim hprocess As Process = pProcess(0)
        If hprocess Is Nothing Then
            Running = False
            Timer_CheckCPU.Enabled = True
            Return
        End If
        Running = True
        Memory = hprocess.PrivateMemorySize64
        CPUTotal = hprocess.TotalProcessorTime.TotalMilliseconds

        If AllConditionsGood() Then
            If Not (_countdown.IsRunning) Then
                _countdown.Reset()
                _countdown.Start()
            End If
            Dim _elapsed As Long = _countdown.ElapsedMilliseconds
            If _elapsed >= _desiredTime_ms Then
                Timer_CheckCPU.Tag = ""
                Return
            End If
        Else
            _countdown.Reset()
        End If
        Timer_CheckCPU.Enabled = True
    End Sub

    Private Function AllConditionsGood() As Boolean
        If CPU_Time Then Return False
        If Memory_Value_Changed Then Return False
        If Running_Time Then Return False
        Return True
    End Function

    Private _countdown As New Stopwatch

    Private _Running As Boolean = False
    Public WriteOnly Property Running() As Boolean
        Set(ByVal value As Boolean)
            _Running = value
            If value Then
                Running_Time = False
            Else
                Running_Time = True
            End If
        End Set
    End Property

    Private _CPUTotal As Double
    Public WriteOnly Property CPUTotal() As Double
        Set(ByVal value As Double)
            CPU = value - _CPUTotal 'used cputime since last check
            _CPUTotal = value
        End Set
    End Property

    Private _CPU As Double
    Public WriteOnly Property CPU() As Double
        Set(ByVal value As Double)
            If value = 0 Then
                CPU_Time = False
            Else
                CPU_Time = True
            End If
            _CPU = value
        End Set
    End Property

    Private _Memory As Long
    Public WriteOnly Property Memory() As Long
        Set(ByVal value As Long)
            MemoryDiff = Math.Abs(value - _Memory)
            _Memory = value
        End Set
    End Property

    Private _MemoryDiff As Long
    Public WriteOnly Property MemoryDiff() As Long
        Set(ByVal value As Long)
            If value = _MemoryDiff Then
                Memory_Value_Changed = False
            Else
                Memory_Value_Changed = True
            End If
            _MemoryDiff = value
        End Set
    End Property

#End Region


Necesito verificar los modulos de ese proceso una vez que termine de cargar.. pero no me funciona me devuelve menos modulos de los esperados..

Gracias de antemano
#204
Ok gracias...

A leer entonces y ver que puedo hacer.

Salu2
#205
Gracias por tu respuesta...

El lenguaje que mas domino es el Vb.Net y no como yo quisiera, el proyecto que necesito usar esta en C# como puedes ver... y se me torna mas complicado

Ahora mismo estaba leyendo sobre las declaraciones de los eventos y delegados en C#, para entenderlo.. y al menos convertirlo para Vb.Net

Actualmente estoy leyendo un curso de Vb.Net, del Guille noc si será el mas indicado, por otro lado estoy en un proyecto que me supera en muchas cosas y ando dando tumbos tratando de entender algunas funciones..

Salu2 y gracias...

Pd: Puedes explicarme porque lo de las malas costumbre en el codigo que te di.
#206
Ando convirtiendo pa vb.net y esto perdido con esta parte..

Código (csharp) [Seleccionar]


public delegate void ErrorHandler(FrostbiteConnection sender, Exception e);

public event ErrorHandler Error;


protected void OnError(Exception e) {
            var handler = this.Error;

            if (handler != null) {
                handler(this, e);
            }
        }



El primer error que me dio es que en Vb.Net la palabra Error es un KeyWord asi que la cambie por ErrorH (la H de handler) y quedo asi:


Código (vbnet) [Seleccionar]


Public Delegate Sub ErrorHandler(ByVal sender As FrostbiteConnection, ByVal e As Exception)

   
    Public Event ErrorH As ErrorHandler


        Protected Sub OnError(ByVal e As Exception)
            Dim handler = ErrorH
            If (Not (handler) Is Nothing) Then
                handler(Me, e)
            End If
        End Sub



Asi me lo deja el traductor, yo lo único que cambie fue:

Código (vbnet) [Seleccionar]


     Dim handler as ErrorHandler



Jajaja entonces el ErrorH me dice que es un evento que use el RaiseEvent, para usar esto tengo que primero a ver implementado el AddHandler obligatoriamente ??  esto lo pregunto porque en un proyecto que revise recientemente encontre que hacian uso del RaiseEvent sin el AddHanlder..

Bueno gracias de antemano cualquier ayuda posible..




#207
Lo solucione

Math.Abs

de todas formas estoy viendo a ver como lo mejoro..

Salu2
#208
Hola,

Estoy tratando de mover un Label dentro de las dimensiones de un Form, con el siguiente código pero estoy obteniendo un error de que debe ser un valor positivo en la parte de r.Next...

Código (vbnet) [Seleccionar]


Dim r As New Random()

            Dim x As Integer = r.Next(Me.ClientRectangle.Height - Label1.Width)
            Dim y As Integer = r.Next(Me.ClientRectangle.Height - Label1.Height)
            Dim p As New Point(x, y)

            Me.Label1.Location = p

        End If



Gracias cualquier ayuda..

Salu2
#209
Pues si sobre ese codigo me referia...

Lo que hice fue que le hice una Referencia al .EXE y ese pedazo no sabia como echarlo andar.. muchísimas gracias voy a probarlo...

PD: A parte de este tema estaba pensando en mostrar un Label con diferentes texto y que se mostrara en diferentes partes del Form y tuviera el efecto de desaparecer  poco a poco y aparecer en otro lado con otro texto.. algo similar al FADE OUT y FADE IN que usastes en un SNNIPETs tuyo.. es posible o tengo que ver por otro lado !!

SAlu2 y gracias nuevamente
#210
Pues ese es el tipo de equipo al que me refiero.

Bueno y que se puede hacer con ese puerto RS232..

Salu2