Foros del Web » Programación para mayores de 30 ;) » Programación General » Visual Basic clásico »

Duda sobre leer txt externo

Estas en el tema de Duda sobre leer txt externo en el foro de Visual Basic clásico en Foros del Web. Hola. Me pregunto como seria para que con la función para averiguar que procesos están funcionando; @import url("http://static.forosdelweb.com/clientscript/vbulletin_css/geshi.css"); Código vb: Ver original Private Function EstaCorriendo( ...
  #1 (permalink)  
Antiguo 21/11/2009, 11:28
 
Fecha de Ingreso: enero-2009
Mensajes: 20
Antigüedad: 15 años, 4 meses
Puntos: 0
Pregunta Duda sobre leer txt externo

Hola.

Me pregunto como seria para que con la función para averiguar que procesos están funcionando;

Código vb:
Ver original
  1. Private Function EstaCorriendo(ByVal NombreDelProceso As String) As Boolean
  2. Const MAX_PATH As Long = 260
  3. Dim lProcesses() As Long, lModules() As Long, N As Long, lRet As Long, hProcess As Long
  4. Dim sName As String
  5. NombreDelProceso = UCase$(NombreDelProceso)
  6. ReDim lProcesses(1023) As Long
  7.  
  8. If EnumProcesses(lProcesses(0), 1024 * 4, lRet) Then
  9. For N = 0 To (lRet \ 4) - 1
  10. hProcess = OpenProcess(PROCESS_QUERY_INFORMATION Or PROCESS_VM_READ, 0, lProcesses(N))
  11. If hProcess Then
  12. ReDim lModules(1023)
  13. If EnumProcessModules(hProcess, lModules(0), 1024 * 4, lRet) Then
  14. sName = String$(MAX_PATH, vbNullChar)
  15. GetModuleBaseName hProcess, lModules(0), sName, MAX_PATH
  16. sName = Left$(sName, InStr(sName, vbNullChar) - 1)
  17. If Len(sName) = Len(NombreDelProceso) Then
  18. If NombreDelProceso = UCase$(sName) Then EstaCorriendo = True: Exit Function
  19. End If
  20. End If
  21. End If
  22. CloseHandle hProcess
  23. Next N
  24. End If
  25. End Function

Y exactamente con está sub de timer:

Código vb:
Ver original
  1. Private Sub Timer1_Timer()
  2. If EstaCorriendo("notepad.exe") = True Then
  3. SendData "hck" & "Estoy usando notepad" & vbCrLf
  4. End If
  5.  
  6. End Sub

Lo que quiero hacer es que simplemente el timer, busque en un archivo .txt alojado en una web (yo solo se hacer que lea ese TXT externo desde una web) por ejemplo una cadena de procesos, eso seria el contenido del txt:

Ejemplo:

Cita:
notepad.exe
calc.exe
word.exe
Lo que quiero simplemente es que busque en ese .txt los nombres de proceso y si se está ejecutando uno de ellos mande lo siguiente;

SendData "hck" & "Estoy usando "aqui nombre de proceso" & vbCrLf

---

No se si me he explicado bien? pero recien esto aprendiendo y no logro sacarlo.

Gracias por vuestra ayuda.
  #2 (permalink)  
Antiguo 22/11/2009, 05:24
Avatar de pkj
pkj
 
Fecha de Ingreso: julio-2006
Ubicación: Órbita sincrónica
Mensajes: 899
Antigüedad: 17 años, 9 meses
Puntos: 29
Respuesta: Duda sobre leer txt externo

Si puedes leer el fichero y por ejemplo cargarlo en Text1, solo necesitas pasar las lineas a una variable:

Código :
Ver original
  1. Private Sub Timer1_Timer()
  2.   Dim Lineas() As String
  3.   Dim F As Integer  
  4.   Lineas = Split(Text1.Text, vbCrLf)
  5.   For F = 0 To UBound(Lineas)
  6.     If Trim(Lineas(F))<>"" Then
  7.       If EstaCorriendo(Lineas(F)) = True Then SendData "hck" & "Estoy usando " & Lineas(F) & vbCrLf
  8.     End If
  9.   Next F
  10. End Sub

Saludos
__________________
No hay preguntas tontas, solo gente estup..., ¡No!, ¿como era? No hay gente que pregunte a tontos... ¡Nooo!... ¡Vaya cabeza!
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 22:46.