Jump to content
Sign in to follow this  

Activate P I D (Process)

Recommended Posts



Hi guys, i am trying to make a code that prompt a screen for me to enter the PID of a specfic process

For Example I have 4 Notepads Running

lets say that the first notepad got this pid (1111) and inside there is (1111)

second notepad pid is (2222) and inside it there is a Text (2222) and so on

so basicly i know what each notepad got inside

now i am trying to type in the prompt Screen the PID that will show and lets say will Maximize and focus on the 2nd notepad Only

$process= InputBox("Process","Enter the PID of the desired notepad to enter text in")

Short Story

How to Activate and bring a my Desired Window to be on top by Entering the PID of that process?

Share this post

Link to post
Share on other sites

I seem to answer this question every other day... But each time it is different... :)

Credit goes to the original author. Who I forget now... :o

Func _GetHwndFromPID($PID)
    $hWnd = 0
    $stPID = DllStructCreate("int")
        $winlist2 = WinList()
        For $i = 1 To $winlist2[0][0]
            If $winlist2[$i][0] <> "" Then
                DllCall("user32.dll", "int", "GetWindowThreadProcessId", "hwnd", $winlist2[$i][1], "ptr", DllStructGetPtr($stPID))
                If DllStructGetData($stPID, 1) = $PID Then
                    $hWnd = $winlist2[$i][1]
    Until $hWnd <> 0
    Return $hWnd

First step is to convert PID to HWND, which the above code does. Then WinSetState ($hWnd, "", @SW_MAXIMIZE) or whatever you want to do.

Hope it helps.



Share this post

Link to post
Share on other sites

Thx brett sorry about the MSN thing Again. :)

Share this post

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this