Login | Register   
LinkedIn
Google+
Twitter
RSS Feed
Download our iPhone app
TODAY'S HEADLINES  |   ARTICLE ARCHIVE  |   FORUMS  |   TIP BANK
Browse DevX
Sign up for e-mail newsletters from DevX


Tip of the Day
Language: PowerBuilder
Expertise: Beginner
Jan 8, 1999

How can I tell if Word is running

Question:
Using Pb 6.5 and Windows 95, how can I tell if Word is running in the background?

Answer:
This is a difficult answer depending on if you know what version of Word the user is running and whether it's 16 or 32 bit. The best way to make sure your application will work on as many different machines as possible is to loop through the windows list of window titles and check to see if one of them is word. You can use the following code to achieve that:

Declare the following API calls:
function uint GetDesktopWindow() library "user32"
function uint GetWindow( uint handle, int wflags ) library "user32"
function int GetWindowTextA(long handle, ref string wintext, int length) library "user32"
Then use the following script to see if word is running:
Long ll_Handle
Long ll_Rel
String ls_Title

ll_handle = GetDeskTopWindow()

ll_rel = 5 // Child

DO WHILE TRUE // Exit on no handle returned by GetWindow()
  // Get the child window
  ll_handle = GetWindow( ll_handle, ll_rel )
  if ll_handle = 0 then exit
  ll_rel = 2 // Next
  ls_Title = space( 255 )

  // Get the window title
  GetWindowTextA( ll_handle, ls_Title, 255 )
  ls_Title = trim( lower( ls_Title ) )

  IF Pos( ls_Title, 'microsoft word' ) = 1 THEN
    MessageBox( 'Hello', 'Word is Running' )
    EXIT
  END IF
LOOP
DevX Pro
 
Comment and Contribute

 

 

 

 

 


(Maximum characters: 1200). You have 1200 characters left.

 

 

Sitemap
Thanks for your registration, follow us on our social networks to keep up-to-date