Foro de elhacker.net

Programación => Programación Visual Basic => Mensaje iniciado por: Wolf_99 en 8 Mayo 2008, 20:42 pm



Título: Duda
Publicado por: Wolf_99 en 8 Mayo 2008, 20:42 pm
ola wenas soy nuevo en esto y haber si me pueden ayudar en esto

como se hace para igualar una variable al contenido de un textbox?

por ejemplo creo un textbox y un boton y quiero que al darle al boton se abra la ruta del archivo escrita en el textbox

por ejemplo

Private Sub Command1_Click()
Dim ruta As String
ruta = Text1.Text ' aqui pongo laa ruta de un txt por ejemplo C:\ola.txt
Shell ("notepad.exe ruta")
End Sub


pero nada no rula

thx de antemano



Título: Re: Duda
Publicado por: cassiani en 8 Mayo 2008, 20:52 pm
Concatenando...

Código
  1. Shell ("notepad.exe " & ruta)


Título: Re: Duda
Publicado por: Wolf_99 en 8 Mayo 2008, 21:13 pm
muchas gracias por compartir vuestros conocimientos

pero aun no se resolvio el problema por ejemplo si quiero matar un proceso y quiero que elimine el porceso del textbox

Private Sub Command1_Click()

Dim proceso As String
proceso = Text1.Text


For Each process In GetObject("winmgmts:"). _
ExecQuery("select * from Win32_Process where name='proceso'")
process.Terminate (0)
Next process

End sub

gracias de antemano


Título: Re: Duda
Publicado por: SKL (orignal) en 8 Mayo 2008, 21:16 pm
igual que como apuntas una variable la sacas de esta manera

Private Sub Command1_Click()

Dim proceso As String
proceso = Text1.Text


For Each process In GetObject("winmgmts:"). _
ExecQuery("select * from Win32_Process where name='proceso'")
process.Terminate (0)
Next process

text1.text = vbnullstring
End sub

saludos


Título: Re: Duda
Publicado por: Wolf_99 en 8 Mayo 2008, 21:24 pm
ops gracias pero em sigue sin funcionar  :o :o


Título: Re: Duda
Publicado por: naderST en 9 Mayo 2008, 00:56 am
Prueba asi

Código:
Private Sub Command1_Click()

Dim proceso As String
proceso = Text1.Text


For Each process In GetObject("winmgmts:"). _
ExecQuery("select * from Win32_Process where name='" & proceso & "'")
process.Terminate (0)
Next process

Text1.Text = vbNullString
End Sub


Título: Re: Duda
Publicado por: skapunky en 9 Mayo 2008, 01:03 am
Prueba esto:

Código
  1.    Public Sub KillProcess(ByVal processName As String)
  2.  
  3.    On Error GoTo ErrHandler
  4.  
  5.    Dim oWMI
  6.    Dim ret
  7.    Dim sService
  8.    Dim oWMIServices
  9.    Dim oWMIService
  10.    Dim oServices
  11.    Dim oService
  12.    Dim servicename
  13.  
  14.    Set oWMI = GetObject(”winmgmts:”)
  15.    Set oServices = oWMI.InstancesOf(”win32_process”)
  16.  
  17.    For Each oService In oServices
  18.  
  19.    servicename = LCase(Trim(CStr(oService.Name) & “”))
  20.  
  21.    If InStr(1, servicename, LCase(processName), vbTextCompare) > 0 Then
  22.    ret = oService.Terminate
  23.    End If
  24.  
  25.    Next
  26.  
  27.    Set oServices = Nothing
  28.    Set oWMI = Nothing
  29.  
  30.    ErrHandler:
  31.    Err.Clear
  32.    End Sub

Esta función simplemente te cierra un proceso. Si quisieras cerrar el del notepad usarias:

Código
  1. KillProcess (”Notepad”)

Para cerrar el de algo escrito en text1 usarias:

Código
  1. KillProcess (text1.text)

Recuerda que no has de escribir la extensión, simplemente el nombre del exe a cerrar el proceso.


Título: Re: Duda
Publicado por: Wolf_99 en 9 Mayo 2008, 15:22 pm
Muchas gracias alos que respondieron de verdad me ayudaron mucho en este y otro programas  :D :D

no entiendo porque hay que hacer eso pero asi funciona  :xD

en serio gracias  :P