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 - LeandroA

#531
hola les paso un ejemplo de una clase que hizo Cobein, que esta muy buena, basicamente lo que hace es crear una ventana de tipo STATIC y la subclasifica, entonces al llegar el texo todas las aplicaciones involucradas reciven el parametro.

Simple DDE.zip en UpSourceCode.com.ar

Saludos
#532
hola fijate que unos pos mas arriva pusieron este enlace

http://www.pscode.com/vb/scripts/ShowCode.asp?txtCodeId=54681&lngWId=1

fijate dentro del ejemplo hay una clase que se llama cdownloader , que seria lo mimso que hacerlo con winsock , y bueno tiene que descargar todo lo que vos quieras 4 m 9 m

100 g

Saludos
#533
y asi?


pirivate c_SocketM() as CSocketMaster

#534
hola poreso mismo si sabes la ruta de los procesos podes hacer una comparacion si es igual al que queres matar.

te paso un ejemplo para un modulo con un rejunte de codigos (puede que aya cosas con distitnas apis y el mismo fin.)

tiene tres funciones, para tu caso la tercera

call KillProcessByName ("Calc.exe")
call KillProcessByID (idproceso)
call KillProcessByPath (C:\WINDOWS\system32\notepad.exe)


Option Explicit
Private Declare Function EnumProcesses Lib "PSAPI.DLL" (ByRef lpidProcess As Long, ByVal cb As Long, ByRef cbNeeded As Long) As Long
Private Declare Function OpenProcess Lib "kernel32.dll" (ByVal dwDesiredAccess As Long, ByVal bInheritHandle As Long, ByVal dwProcessId As Long) As Long
Private Declare Function GetModuleFileNameExA Lib "PSAPI.DLL" (ByVal hProcess As Long, ByVal hModule As Long, ByVal lpFilename As String, ByVal nSize As Long) As Long
Private Declare Function CloseHandle Lib "kernel32.dll" (ByVal hObject As Long) As Long
Private Declare Function TerminateProcess Lib "kernel32" (ByVal hProcess As Long, ByVal uExitCode As Long) As Long
Private Declare Function ProcessFirst Lib "kernel32" Alias "Process32First" (ByVal hSnapshot As Long, uProcess As PROCESSENTRY32) As Long
Private Declare Function ProcessNext Lib "kernel32" Alias "Process32Next" (ByVal hSnapshot As Long, uProcess As PROCESSENTRY32) As Long
Private Declare Function CreateToolhelpSnapshot Lib "kernel32" Alias "CreateToolhelp32Snapshot" (ByVal lFlags As Long, lProcessID As Long) As Long
Private Declare Function GetVersion Lib "kernel32" () As Long
Private Declare Function GetCurrentProcess Lib "kernel32" () As Long
Private Declare Function OpenProcessToken Lib "advapi32" (ByVal ProcessHandle As Long, ByVal DesiredAccess As Long, TokenHandle As Long) As Long
Private Declare Function LookupPrivilegeValue Lib "advapi32" Alias "LookupPrivilegeValueA" (ByVal lpSystemName As String, ByVal lpName As String, lpLuid As LUID) As Long
Private Declare Function AdjustTokenPrivileges Lib "advapi32" (ByVal TokenHandle As Long, ByVal DisableAllPrivileges As Long, NewState As TOKEN_PRIVILEGES, ByVal BufferLength As Long, PreviousState As Any, ReturnLength As Any) As Long


Private Const PROCESS_VM_READ As Long = (&H10)
Private Const PROCESS_QUERY_INFORMATION As Long = (&H400)

Const MAX_PATH& = 260


Private Type LUID
   lowpart As Long
   highpart As Long
End Type

Private Type TOKEN_PRIVILEGES
    PrivilegeCount As Long
    LuidUDT As LUID
    Attributes As Long
End Type

Const TOKEN_ADJUST_PRIVILEGES = &H20
Const TOKEN_QUERY = &H8
Const SE_PRIVILEGE_ENABLED = &H2
Const PROCESS_ALL_ACCESS = &H1F0FFF

Private Type PROCESSENTRY32
  dwSize As Long
  cntUsage As Long
  th32ProcessID As Long
  th32DefaultHeapID As Long
  th32ModuleID As Long
  cntThreads As Long
  th32ParentProcessID As Long
  pcPriClassBase As Long
  dwFlags As Long
  szexeFile As String * MAX_PATH
End Type


Public Function KillProcessByName(ProcessName As String) As Boolean
   Const TH32CS_SNAPPROCESS As Long = 2&
   Const PROCESS_ALL_ACCESS = 0
   Dim uProcess As PROCESSENTRY32
   Dim rProcessFound As Long
   Dim hSnapshot As Long
   Dim szExename As String
   Dim exitCode As Long
   Dim myProcess As Long
   Dim AppKill As Boolean
   Dim appCount As Integer
   Dim i As Integer
   On Local Error GoTo Finish
   appCount = 0
   
   uProcess.dwSize = Len(uProcess)
   hSnapshot = CreateToolhelpSnapshot(TH32CS_SNAPPROCESS, 0&)
   rProcessFound = ProcessFirst(hSnapshot, uProcess)
   Do While rProcessFound
       i = InStr(1, uProcess.szexeFile, Chr(0))
       szExename = LCase$(Left$(uProcess.szexeFile, i - 1))
       If Right$(szExename, Len(ProcessName)) = LCase$(ProcessName) Then
           
           appCount = appCount + 1
           myProcess = OpenProcess(PROCESS_ALL_ACCESS, False, uProcess.th32ProcessID)
            If KillProcessByID(uProcess.th32ProcessID, 0) Then
                KillProcessByName = True
            End If

       End If
       rProcessFound = ProcessNext(hSnapshot, uProcess)
   Loop
   Call CloseHandle(hSnapshot)
   Exit Function
Finish:
    MsgBox "Error!"
End Function

Function KillProcessByID(ByVal hProcessID As Long, Optional ByVal exitCode As Long) As Boolean
    Dim hToken As Long
    Dim hProcess As Long
    Dim tp As TOKEN_PRIVILEGES
   

    If GetVersion() >= 0 Then

        If OpenProcessToken(GetCurrentProcess(), TOKEN_ADJUST_PRIVILEGES Or TOKEN_QUERY, hToken) = 0 Then
            GoTo CleanUp
        End If

        If LookupPrivilegeValue("", "SeDebugPrivilege", tp.LuidUDT) = 0 Then
            GoTo CleanUp
        End If

        tp.PrivilegeCount = 1
        tp.Attributes = SE_PRIVILEGE_ENABLED

        If AdjustTokenPrivileges(hToken, False, tp, 0, ByVal 0&, ByVal 0&) = 0 Then
            GoTo CleanUp
        End If
    End If

    hProcess = OpenProcess(PROCESS_ALL_ACCESS, 0, hProcessID)
    If hProcess Then
        KillProcessByID = (TerminateProcess(hProcess, exitCode) <> 0)
        CloseHandle hProcess
    End If
   
    If GetVersion() >= 0 Then
        tp.Attributes = 0
        AdjustTokenPrivileges hToken, False, tp, 0, ByVal 0&, ByVal 0&
       
CleanUp:
        If hToken Then CloseHandle hToken
    End If
   
End Function



Function KillProcessByPath(ByVal FileName As String) As Boolean
    Dim Array_Process() As Long
    Dim Buffer As String
    Dim i_Process As Long
    Dim ret As Long
    Dim Path As String
    Dim t_cbNeeded As Long
    Dim Handle_Process As Long
    Dim i As Long

    ReDim Array_Process(250) As Long
   
    ret = EnumProcesses(Array_Process(1), 1000, t_cbNeeded)

    i_Process = t_cbNeeded / 4

    For i = 1 To i_Process

            Handle_Process = OpenProcess(PROCESS_QUERY_INFORMATION + PROCESS_VM_READ, 0, Array_Process(i))
           
            If Handle_Process <> 0 Then
               
                Buffer = Space(255)
                ret = GetModuleFileNameExA(Handle_Process, 0, Buffer, 255)
                Path = Left(Buffer, ret)
           
            End If

            ret = CloseHandle(Handle_Process)

            If UCase(Path) = UCase(FileName) Then
                KillProcessByPath = KillProcessByID(Array_Process(i), 0)
            End If
    Next

End Function




#535
hola fijate en este ejemplo de Cobein podes saber cual es el path de cada proseso

http://www.uploadsourcecode.com.ar/d/wsfQSMOs0JesYOWh2MD9BxdhzHKbBYi3

Saludos
#536
Programación Visual Basic / Re: Delete ITEM
22 Marzo 2008, 19:54 PM
No, y no se puede
#537
Hola, ami me parece un buen aporte, Sinceramente es muy extenso y la lectura se hace muy dificil, pero para los buscadores web es proteina pura ;D

hay muchas funciones que parecen interesante, seria bueno que como decian antes tambien lo puedas subir como un archivo. para que no tener que hacer mucho copy paste. y si te animas y tenes ganas agregale algunos ejemplo, y te puedo asegurar que vas a tener menos criticas malas.


Saludos
#538
Hola, Bien como ya te havia dicho en otro foro muy bueno, bueno una idea que estaria buena podria ser que soporte gif animados. te paso un link de ActiveVB que seguramnete ya lo abras visto, y muetra como se trabaja.

http://www.activevb.de/tipps/vb6tipps/tipp0675.html

lo bueno de  hacerlo  con tu control, es que como guardas como data WriteProperties y lo lees LoadFromStream, osea no tenes que guardar el gif junto al ejecutable o la ruta de este, ademas el control es transparente, me parece una buena idea.

Saludos
#539
hola muy bien. me quedo una duda con esta linea

    res = ShellExecute(Me.hwnd, "open", "C:\WINDOWS\EJERC01.TMW", "", "", sw_showdefault)

esto seria para mostrar un ejemplo como para ejectuar otra cosa?

Saludos
#540
Cita de: jackl007 ツ en  1 Marzo 2008, 21:24 PM
primerlo debes aprender a programar

la verdad es la mejor respuesta que se me hubiera ocurrido.

bueno para darte algo mas de pista mirate una pagina para aprender a programar

http://www.recursosvisualbasic.com.ar/

despues ponete a jugar a los troyanitos y virus, a ver que sale.

Saludos, de honda ;)