Foro de elhacker.net

Programación => .NET (C#, VB.NET, ASP) => Mensaje iniciado por: Sentex en 1 Junio 2017, 13:05 pm



Título: Detectar un proceso y realizar una acción
Publicado por: Sentex en 1 Junio 2017, 13:05 pm
Hola.
Necesitaría saber como determinar si existe un proceso y ejecutar una acción en VB.Net

Ejemplo:
If (Codigo para detectar el proceso) Then
Shell(taskkill /IM proceso.exe)
Else
'Nada
End If

Gracias por su atención ;)


Título: Re: Detectar un proceso y realizar una acción
Publicado por: Eleкtro en 1 Junio 2017, 17:15 pm
determinar si existe un proceso
  • Process.GetProcessById() Function | MSDN (https://msdn.microsoft.com/en-us/library/system.diagnostics.process.getprocessbyid(v=vs.110).aspx)
  • Process.GetProcessesByName() Function | MSDN (https://msdn.microsoft.com/en-us/library/system.diagnostics.process.getprocessesbyname(v=vs.110).aspx)

y ejecutar una acción en VB.Net
Asumiendo que por "acción" te refieras a iniciar un proceso:
  • Process.Start() Function | MSDN (https://msdn.microsoft.com/en-us/library/system.diagnostics.process.start(v=vs.110).aspx)

Shell(taskkill /IM proceso.exe)
  • Process.Kill() Method | MSDN (https://msdn.microsoft.com/en-us/library/system.diagnostics.process.kill(v=vs.110).aspx)

Ten presente que esto es programación en VB.NET, no en VB6 ni en BATCH. No debes usar Shell ni TaskKill para nada.

PD: Y las preguntas sobre VB.NET van en el subforo de .NET.

Saludos!


Título: Re: Detectar un proceso y realizar una acción
Publicado por: Sentex en 1 Junio 2017, 21:02 pm
No me funciona porque si no existe el proceso no puedo hacer que realize algo necesito un if


Título: Re: Detectar un proceso y realizar una acción
Publicado por: Eleкtro en 1 Junio 2017, 21:30 pm
No me funciona porque si no existe el proceso no puedo hacer que realize algo necesito un if

...¿Qué?. Por favor intenta explicar con más detalle a lo que te refieres. De todas formas te aseguro que NO necesitas nada más que la clase System.Diagnostics.Process para hacer lo que quieres. Si quieres comprobar si existe un process, pues simplemente evalua si el valor de retorno devuelto por la llamada a la función Process.Get...() es nulo o no lo es, tan simple como eso, y con eso escribes el "If".

A menos que muestres un código con lo que has intentado, poco más puedo decirte ni hacer para corregir los fallos del código.

Saludos!