Jump to content
Sign in to follow this  
Dava

Window Title vs Taskbar Title

Recommended Posts

Dava

Hi,

I am trying to get the "percentage complete" indication from DVD Decrypter whilst ripping so as to show it on an external display in my HTPC.

while ProcessExists('DVDDecrypter.exe')
    $title=WinGetTitle('DVD Decrypter',"")
    $pct=0
    $pct=StringLeft($title,3)
    MsgBox( 0,"Rip",$title,5)
Wend

I can see that in the Windows taskbar at the bottom that the title is "12% - DVD Decrypter" but the Window title is always just "DVD Decrypter" and that is what is returned to AutoIT.

Any ideas how I can get the Taskbar version of the title including the percentage?

Share this post


Link to post
Share on other sites
Dava

Cracked it!

Using Winlist() shows that there are multiple windows, one of which has the percentage at the front.

Share this post


Link to post
Share on other sites
MHz

; use regex
$var = "12% - DVD Decrypter"
Run('notepad')
WinWait('Untitled')
WinSetTitle('Untitled', '', $var)
While ProcessExists('Notepad.exe')
    $title = WinGetTitle('[REGEXPTITLE:[[0-9]]*% - DVD Decrypter]')
    $pct = 0
    $pct = StringLeft($title,3)
    MsgBox( 0, "Rip", $title, 5)
WEndoÝ÷ Ù«­¢+ØìÕÍÍÕѥѱµ½)=ÁÐ ÅÕ½Ðí]¥¹Q¥Ñ±5Ñ¡5½ÅÕ½Ðì°È¤(ÀÌØíÙÈôÅÕ½ÐìÄÈ´YÉåÁÑÈÅÕ½Ðì)IÕ¸ Ìäí¹½ÑÁÌäì¤)]¥¹]¥Ð ÌäíU¹Ñ¥Ñ±Ìäì¤)]¥¹MÑQ¥Ñ± ÌäíU¹Ñ¥Ñ±Ìäì°ÌäìÌäì°ÀÌØíÙȤ)]¡¥±AɽÍÍá¥ÍÑÌ Ìäí9½ÑÁ¹áÌäì¤(ÀÌØíѥѱô]¥¹ÑQ¥Ñ± Ìäì´YÉåÁÑÈÌäì¤(ÀÌØíÁÐôÀ(ÀÌØíÁÐôMÑÉ¥¹1Ð ÀÌØíѥѱ°Ì¤(5Í   ½à À°ÅÕ½ÐíI¥ÀÅÕ½Ðì°ÀÌØíѥѱ°Ô¤)]¹

You could also try and use the class of the window or other. Check the help page on "Window Titles and Text (Advanced)".

:)

Share this post


Link to post
Share on other sites
Dava

Thanks, I managed to extract the percentage, only to the console at the moment but I got the exact functionality I needed with this:

run ('d:\Program Files\dvd decrypter\DVDDecrypter.exe /start /close /overwrite yes',"",@SW_MINIMIZE)
Opt("WinTitleMatchMode", 2)


AutoItSetOption("WinDetectHiddenText",1)
while ProcessExists('DVDDecrypter.exe')
    
    $var = WinList("% - DVD Decrypter")
    
    if $var[0][0] > 0 Then
        ConsoleWrite ($var[1][0])
        $pct=0
        $pct=StringLeft($var[1][0],4)
        while not StringIsDigit($pct)
            $pct=StringLeft($pcT, stringlen($pct)-1)
        WEnd
        
        ConsoleWrite (":" & $pct & @lf)
        
    EndIf
    sleep (1000)
    
WEnd

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  

×

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.