Sign in to follow this  
Followers 0
s0urce

Hidden Windows in Windows 10

7 posts in this topic

Hello folks,

I try to set the window state of 3th party windows (win32 gui) to "@SW_HIDE". This seems not to work properly in windows 10. The window is hidden, but it is still visible in the windows bar. If I click on it, nothing happens. Thx for some infos.

Br, s0urce

Share this post


Link to post
Share on other sites



#2 ·  Posted (edited)

What's the Windows bar, the Windows taskbar, the Titlebar from window?  What's the name from 3th paty app?

Thx for more infos.

 

 

Edited by AutoBert

Share this post


Link to post
Share on other sites

Yeah, the Windows taskbar. The app is an selfwritten one. Delphi compile to exe.

Share this post


Link to post
Share on other sites

You hided the wrong window. Delphi uses a Form for Project, and the hided one is the Child of this Project.

Share this post


Link to post
Share on other sites
3 hours ago, AutoBert said:

You hided the wrong window. Delphi uses a Form for Project, and the hided one is the Child of this Project.

Oh, good to know, thank you very much. Do you maybe have a solution to hide the parent "process"? I found this option "_WinAPI_GetParentProcess(WinGetProcess($title))" to get a parent process, but I found no way to hide a window with it's pid.

Share this post


Link to post
Share on other sites

_WinAPI_GetWindowLong($hWnd3thParty, $GWL_HWNDPARENT) should help. It returns the needed WindowHandle from Parentwindow. 

1 person likes this

Share this post


Link to post
Share on other sites

#7 ·  Posted (edited)

Thank you AutoBert, this was the solution. Here is my ready function, maybe someone else looking for this:

#include <WinAPI.au3>

func _WinAndParentSetState($title,$state)
  $childHandle=WinGetHandle($title)
  $parentLong=_WinAPI_GetWindowLong($childHandle,$GWL_HWNDPARENT)
  $parentHandle=HWnd($parentLong)
  WinSetState($parentHandle,'',$state)
  WinSetState($childHandle,'',$state)
endfunc
Edited by s0urce

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  
Followers 0

  • Similar Content

    • rg20
      By rg20
      Greetings all,
       
      I have an app that runs fine in windows 7 but not windows 10.
      issue : when entering the filename to save, it enters it into the saveAs dialog box, but Office still tries to save as "Diagram1" or "Presentation1"
       
      $FileError = "" MonitorProcess2("VISIO") _DebugOut("Visio Done") MonitorProcess2("POWERPNT") _debugOut("Powerpoint Done") CloseSave($FileSavePathName, $SaveAsWindow) _DebugOut("Saved and closed Powerpoint") _VSO_DocumentSave($objVisioFile) while not _VSO_DocumentSaved($objVisioFile) WEnd _VSO_VisioClose($objVisioFile) _DebugOut("Saved and closed Visio") else _DebugOut("Filename Does not exist = "& $FilePathName) EndIf the monitor process2 just makes sure the processes are complete before trying to save the files.
       
      The closeSave function is below, but since I am opening the file with the proper name, this is not an issue
      func CloseSave($SaveFile, $SaveAsWindow) _DebugOut("Save File ") _DebugOut($SaveFile) send("!{F4}") send ("!S") $title = WinGetTitle("[ACTIVE]") _DebugOut("WINDOW - current window is Powerpoint to enter filename " & $title) while not ($title = $SaveAsWindow) $title = WinGetTitle("[ACTIVE]") wend ControlSetText ($SaveAsWindow,"","[CLASS:Edit; INSTANCE:1]",$SaveFile) send ("!S") $title = WinGetTitle("[ACTIVE]") while not StringInStr($title,"Visio") $title = WinGetTitle("[ACTIVE]") wend EndFunc  
    • brodillo
      By brodillo
      Hello, I've experience using automation anywhere. Now I want to learn Auto It for my automatization projects.
      I've tried to implement an example using calculator program in Windows 10.
      When I used au3Info program to identify  an escefific zone in the calc window , au3info always return the same advanced class  [CLASS:ApplicationFrameInputSinkWindow; INSTANCE:1] 
      Is there a restriction for windows 10?
      See my little script
       
      Run("Calc.exe")
      WinWaitActive("Calculadora")
      WinActive("Calculadora")
      $old="0"
      $new="1020"
      $controlNumber="[CLASS:ApplicationFrameInputSinkWindow; INSTANCE:1]"
      ControlSetText("Calculadora","",$controlNumber,$new)
      ControlSend("Calculadora","",$controlNumber,$new)
       
      I've tried using controlSetText and ControlSend.
       
      Thank you for your help
       
    • DLS
      By DLS
      I have a working script that changes the core affinity and process priority of multiples of a specific application I have running.  
      I have that part figured out.

      I would like to make a little modification to it.

      Windows10 introduced virtual desktops.  I am trying to have different core affinity and priority of processes on the visible and non-visible desktops.  
      What I need is a bool function that could be described as IsWindowOnCurrentDesktop($hWnd).  I have searched the winAPI.au3 but I do not believe anything like that exists built it.
      I have searched multiple places before asking for help. I found a Microsoft supplied example of the function I need using C#, but I am unfamiliar with C# to a degree that I cannot port the system call over.
      https://blogs.msdn.microsoft.com/winsdk/2015/09/10/virtual-desktop-switching-in-windows-10/
      Help is appreciated but not expected.  Thanks in advanced.   In the meantime I will be learning C# syntax and class structure.
    • therks
      By therks
      Does anybody know how I would go about getting the window title bar colour on Windows 10? I tried using _WinAPI_GetSysColor, and manually reading the registry (HKCU\Control Panel\Colors, ActiveTitle) but in either case I get the same (0x99B4D1, wrong) result.
      RegRead('HKCU\Control Panel\Colors', 'ActiveTitle') ; Returns 153 180 209 (aka 99B4D1) _WinAPI_GetSysColor ($COLOR_ACTIVECAPTION) ; Returns 0xD1B499 (aka 99B4D1)  
    • therks
      By therks
      As the title says, does anyone know of a way to open the Windows 10 action center using AutoIt. Maybe via rundll or some other applet?
      My intention is to just hide the normal icon, then have an AutoIt system tray icon that will open the action center on click. And I can't just send the Win+A hotkey because I have it disabled. 
      Thanks for reading.