SW_SHOWMAXIMIZED = 3
ShowWindow(hWnd,3)
System hangs.
SW_RESTORE = 9
Works.
Regards
Otto
SW_SHOWMAXIMIZED = 3
ShowWindow(hWnd,3)
System hangs.
SW_RESTORE = 9
Works.
Regards
Otto
#include "FiveWin.ch"
function Main()
local oWnd
DEFINE WINDOW oWnd TITLE "Test for Otto"
ACTIVATE WINDOW oWnd MAXIMIZED
return nilHere is my code.
Regards
Otto
func ziRechnung
LOCAL cHSTIni := ".\INI\WINHOTEL.INI"
LOCAL WIN_HOT_VER := ""
LOCAL nPos := ""
LOCAL hWnd := GetWindow( GetActiveWindow(), GHW_HWNDFIRST )
LOCAL cTask :=""
LOCAL ktowahlaufruf := 0
local cTest :=""
*--------------------------------------------
WIN_HOT_VER := GetPvProfString( "SETUPDATEN","VerzeichnisWinHotel" , "C:\WINHOT96" ,cHSTIni )
nPos := len(WIN_HOT_VER+"WHRG.EXE")
// cTest := UPPER(left(cTask,nPos))
// msginfo( cTest )
while hWnd != 0
cTask = GetModuleFileName( GetWindowWord( hWnd, GWW_HINSTANCE ) )
// msginfo( cTask )
if UPPER(left(cTask,nPos)) = UPPER(WIN_HOT_VER + "WHRG.EXE")
//msginfo("Vor show 9" + UPPER(left(cTask,nPos)))
ShowWindow(hWnd,9)
setFocus(hWnd)
SETFOREGRO(hWnd)
RETURN NIL
endif
hWnd = GetWindow( hWnd, GHW_HWNDNEXT )
end
winexec("WHRG.exe")
RETURN NIL
Otto,
Please provide a reduced and self contained sample. A PRG that can be copied, compiled and executed as it is with no changes. Its the only way to provide efficient tech support. Thanks.
Here we are:
Otto,
Thanks. Would you mind to explain whats the purpouse of your code ?
If the programm is allready runnig to bring it in the foreground.
BringWindowToTop(hWnd)
does not resolve the problem.
Regards
Otto
Otto,
>If the programm is allready running to bring it in the foreground.
Try this:
DLL32 FUNCTION SETFOREGROUNDWINDOW( hWnd AS LONG ) AS BOOL;
PASCAL FROM "SetForegroundWindow" LIB "user32.dll"
Thank you James. I have this code in my testprg.
But does not work.
Regards
Otto
Otto,
Try with StopUntil( <bCondition> ).
Regards,
I have revisited my Windows 2000 API SuperBible,
and it's appear than "ShowWindow does not make sure the window is in the foreground. Use SetWindowPos or SetActiveWindow function to bring a window to the foreground."
Also, there is LockSetForegroundWindow function who
"...disable or enables the calls to the SetForegroundWindow
function for the calling process.
By default, the system automatically enables calls to SetForegroundWindow if the user press the Alt key or takes some
action that causes the system itself to change the foreground window.
This function allows applications to prevent other applications from
making a foreground change that can interrupt its interaction with the user."
Hope this help ![]()