?
Solved

Another program location

Posted on 2013-11-07
2
Medium Priority
?
257 Views
Last Modified: 2013-11-07
I need to get the screen Top and Left position of another application.  
Example:
How could I get the Top and Left position of NotePad.exe from My Application.

Please give example code.

Thanks in advance for your help.
0
Comment
Question by:PhilChapmanJr
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
2 Comments
 
LVL 8

Accepted Solution

by:
5teveo earned 2000 total points
ID: 39630729
Use these declarations

    Public Structure RECT
        Public Left As Integer
        Public Top As Integer
        Public Right As Integer
        Public Bottom As Integer
    End Structure

    Dim tWnd As Long

    Private Declare Auto Function FindWindow Lib "user32" (ByVal lpClassName As String, ByVal lpWindowName As String) As IntPtr

    Private Declare Function SetForegroundWindow Lib "user32" (ByVal hWnd As IntPtr) As Boolean

    Public Overloads Declare Function GetWindowRect Lib "User32" Alias "GetWindowRect" (ByVal hWnd As IntPtr, ByRef lpRect As RECT) As Int32
.
.
.
then code this into a button to test logic of finding a NOTEPAD window with label of
"Untitled - Notepad"

   Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click

        Dim R As RECT
        For Each p As Process In Process.GetProcesses
            If InStr(p.MainWindowTitle, "Untitled - Notepad") > 0 Then
                'SetForegroundWindow(p.MainWindowHandle)
                GetWindowRect(p.MainWindowHandle, R)

                MsgBox("Top=" & R.Top.ToString & vbCrLf & _
                       "LEFT=" & R.Left.ToString & vbCrLf & _
                       "bottom=" & R.Bottom.ToString & vbCrLf & _
                       "right=" & R.Right.ToString)
                Exit For
            End If
        Next

    End Sub

good luck!
0
 
LVL 2

Author Closing Comment

by:PhilChapmanJr
ID: 39631197
Thanks
0

Featured Post

Enroll in August's Course of the Month

August's CompTIA IT Fundamentals course includes 19 hours of basic computer principle modules and prepares you for the certification exam. It's free for Premium Members, Team Accounts, and Qualified Experts!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

The debugging module of the VB 6 IDE can be accessed by way of the Debug menu item. That menu item can normally be found in the IDE's main menu line as shown in this picture.   There is also a companion Debug Toolbar that looks like the followin…
Since upgrading to Office 2013 or higher installing the Smart Indenter addin will fail. This article will explain how to install it so it will work regardless of the Office version installed.
As developers, we are not limited to the functions provided by the VBA language. In addition, we can call the functions that are part of the Windows operating system. These functions are part of the Windows API (Application Programming Interface). U…
Get people started with the process of using Access VBA to control Excel using automation, Microsoft Access can control other applications. An example is the ability to programmatically talk to Excel. Using automation, an Access application can laun…
Suggested Courses
Course of the Month8 days, 10 hours left to enroll

765 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question