autoitfan Posted July 2, 2008 Share Posted July 2, 2008 Quite a while back I wrote two compiled AutoIt scripts that worked fine for well over a year. The first: MusicMan.exe takes an MP3 invocation parameter and plays it - SoundPlay($MP3Drv&":\mp3music\" & $music & ".mp3", 1) The second StopMM.exe is invoked from a desktop icon and terminates MusicMan.exe - If ProcessExists("musicman.exe") Then ProcessClose("musicman.exe") EndIf Since the last time this was known to have worked, I've downloaded and installed a couple of photo editing programs and a WallPaper Changer from CNET.com. Also a few MS Windows "Security", JAVA, and Flash updates have run. Hopefully, programs from CNET are virus free. But, if it is a virus, it certainly has a very specific target. I have resolved the "ProcessClose problem" to my satisfaction by using with TaskKill.exe, thanks to some help from the AutoIt forum, but of course "ProcessExist" and "ProcessClose" still fail. I've proven "ProcessExist" failure with "MsgBox" for a process (MusicMan.exe) Task Manager shows is running and which continues to play an MP3 file. Both Task Manager and TaskKill.exe have no problem terminating this process. Anyone else out there having these kind of problems? Link to comment Share on other sites More sharing options...
Airwolf Posted July 2, 2008 Share Posted July 2, 2008 Do you have antispyware software installed? Something like Comodo Security+, for example, would probably block your StopMM.exe from viewing processes. MusicMan.exe is running under the same user profile as the user running StopMM.exe, correct? Certifications: A+, Network+, Security+, Linux+, LPIC-1, MCSA | Languages: AutoIt, C, SQL, .NETBooks: AutoIt v3: Your Quick Guide - $7.99 - O'Reilly Media - September 2007-------->[u]AutoIt v3 Development - newbie to g33k[/u] - Coming Soon - Fate Publishing - Spring 2013UDF Libraries: SkypeCOM UDF Library | ADUC Computers OU Cleanup | Find PixelChecksumExamples: Skype COM Examples - Skype4COMLib Examples converted from VBS to AutoIt Link to comment Share on other sites More sharing options...
autoitfan Posted July 3, 2008 Author Share Posted July 3, 2008 Thank you for your response Andy. Yes, I do have Avast! anti-virus installed and it updates frequently. Both processes run Windows XP Pro User session. so I assume that means the same profile. Not really an expert on these terms. Link to comment Share on other sites More sharing options...
Airwolf Posted July 3, 2008 Share Posted July 3, 2008 (edited) Thank you for your response Andy. Yes, I do have Avast! anti-virus installed and it updates frequently. Both processes run Windows XP Pro User session. so I assume that means the same profile. Not really an expert on these terms.I'd have to have access to a machine that is affected in the same manner to troubleshoot the problem... but why not just use _RunDOS() to do the TaskKill command if you already know TaskKill works? #include <Process.au3> _RunDOS('Taskkill.exe /im "MusicMan.exe"') Edited July 3, 2008 by Airwolf Certifications: A+, Network+, Security+, Linux+, LPIC-1, MCSA | Languages: AutoIt, C, SQL, .NETBooks: AutoIt v3: Your Quick Guide - $7.99 - O'Reilly Media - September 2007-------->[u]AutoIt v3 Development - newbie to g33k[/u] - Coming Soon - Fate Publishing - Spring 2013UDF Libraries: SkypeCOM UDF Library | ADUC Computers OU Cleanup | Find PixelChecksumExamples: Skype COM Examples - Skype4COMLib Examples converted from VBS to AutoIt Link to comment Share on other sites More sharing options...
autoitfan Posted July 9, 2008 Author Share Posted July 9, 2008 Thanks for the suggestion Andy, but not sure I understand why you think _RunDOS invocation of TASKKILL would be better than what is working now: ; If ProcessExists("musicman.exe") Then ; ProcessClose("musicman.exe") ; Sleep(500) ; EndIf RunWait("taskkill /F /IM musicman.exe", "", @SW_HIDE) Link to comment Share on other sites More sharing options...
Airwolf Posted July 9, 2008 Share Posted July 9, 2008 Thanks for the suggestion Andy, but not sure I understand why you think _RunDOS invocation of TASKKILL would be betterthan what is working now:; If ProcessExists("musicman.exe") Then; ProcessClose("musicman.exe"); Sleep(500); EndIf RunWait("taskkill /F /IM musicman.exe", "", @SW_HIDE)You said your method had stopped working. If you now have something working, then by all means use it. Certifications: A+, Network+, Security+, Linux+, LPIC-1, MCSA | Languages: AutoIt, C, SQL, .NETBooks: AutoIt v3: Your Quick Guide - $7.99 - O'Reilly Media - September 2007-------->[u]AutoIt v3 Development - newbie to g33k[/u] - Coming Soon - Fate Publishing - Spring 2013UDF Libraries: SkypeCOM UDF Library | ADUC Computers OU Cleanup | Find PixelChecksumExamples: Skype COM Examples - Skype4COMLib Examples converted from VBS to AutoIt Link to comment Share on other sites More sharing options...
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now