HeffeD Posted December 31, 2007 Posted December 31, 2007 You might want to rethink the name...All-in-one protection center leads one to think that this is the only application they'll need to protect their computer. It says right there in the name that all the protection I need is in this one application! However, this application gives no actual "protection" whatsoever.Maybe call it, Limited AV Verifier or something?
ashley Posted December 31, 2007 Author Posted December 31, 2007 Well... this is .. alright. So.. if I don't have Avast or Windows Defender my PC is not protected? Well, that's just balls. You should start by trying to find which antivirus(es) are installed. This is a start: Dim $SupportedApps = "Trend,McAfee,Nod32,Avast,Norton"; Add more AV's here, separate them with a comma (,) Dim $MyApps = StringSplit($SupportedApps, ",") Dim $InstalledAppsCount = 1 Dim $Found = 0 TrayTip("Scanning...", "Scanning registry for installed AntiVirus(es).", 5) While 1 $SubKey = RegEnumKey("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall", $InstalledAppsCount) If @error Then ExitLoop $DisplayName = RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\" & $SubKey, "DisplayName") For $i = 1 To $MyApps[0] If StringInStr($DisplayName, $MyApps[$i]) Then $Found += 1 If $DisplayName = "my antivirus " Then ContinueLoop MsgBox(64, 'Found:', $DisplayName & @CRLF & 'Has been Found') EndIf Next $InstalledAppsCount += 1 WEnd And for god's sake, Sleep(Random(300, 2500)) won't make your script look cooler. It makes it slower and worse. it dont work lol. Free icons for your programs
BrettF Posted January 1, 2008 Posted January 1, 2008 (edited) God. Use some initive and make it work. And how is this an example script? All I see is useless chit-chat that should belong in support... <Hint>Read the if in the for loop... See the if $displayname = '...'?? Mmmmmmmm... Rename it?</hint> Edited January 1, 2008 by Bert Vist my blog!UDFs: Opens The Default Mail Client | _LoginBox | Convert Reg to AU3 | BASS.au3 (BASS.dll) (Includes various BASS Libraries) | MultiLang.au3 (Multi-Language GUIs!)Example Scripts: Computer Info Telnet Server | "Secure" HTTP Server (Based on Manadar's Server)Software: AAMP- Advanced AutoIt Media Player | WorldCam | AYTU - Youtube Uploader Tutorials: Learning to Script with AutoIt V3Projects (Hardware + AutoIt): ArduinoUseful Links: AutoIt 1-2-3 | The AutoIt Downloads Section: | SciTE4AutoIt3 Full Version!
ashley Posted January 3, 2008 Author Posted January 3, 2008 (edited) sorry about the long delay between the next update and the last... I have deleted the script of my PC so i could start form scratch now i have autoit again... so i can make it 100% better. @ Bert... I didn't see that. anyways its no longer needed as im remaking my script. Edited January 3, 2008 by ashley Free icons for your programs
BrettF Posted January 3, 2008 Posted January 3, 2008 I didn't see that. anyways its no longer needed as im remaking my script.Well then you can't have looked hard enough... If it didn't work first try, whats the first thing you do?? Look at the code. Then you find the part where you suspect it's meant to return something. Usually a conditional statement. Then you would have seen it. Vist my blog!UDFs: Opens The Default Mail Client | _LoginBox | Convert Reg to AU3 | BASS.au3 (BASS.dll) (Includes various BASS Libraries) | MultiLang.au3 (Multi-Language GUIs!)Example Scripts: Computer Info Telnet Server | "Secure" HTTP Server (Based on Manadar's Server)Software: AAMP- Advanced AutoIt Media Player | WorldCam | AYTU - Youtube Uploader Tutorials: Learning to Script with AutoIt V3Projects (Hardware + AutoIt): ArduinoUseful Links: AutoIt 1-2-3 | The AutoIt Downloads Section: | SciTE4AutoIt3 Full Version!
ashley Posted January 3, 2008 Author Posted January 3, 2008 Well then you can't have looked hard enough... If it didn't work first try, whats the first thing you do?? Look at the code. Then you find the part where you suspect it's meant to return something. Usually a conditional statement. Then you would have seen it.ok, ok whats got in to you?im sorry! Free icons for your programs
ashley Posted January 3, 2008 Author Posted January 3, 2008 Version 2! Released... BETA Version 2! comming soon. post comments... and please update code where needed. Free icons for your programs
JustinReno Posted January 3, 2008 Posted January 3, 2008 It froze on me because I clicked post. In the programs While/Wend loop put _IELoadWaitTimeout(1000) anywhere in the loop: While 1 _IELoadWaitTimeout(1000) Blah blah blah WEnd
ashley Posted January 3, 2008 Author Posted January 3, 2008 ok thanks for that BugFix, ill implant that in the update thats comming soon. So u like the new layout and version Free icons for your programs
JustinReno Posted January 3, 2008 Posted January 3, 2008 Yes, but the post function is sort of useless.
ashley Posted January 3, 2008 Author Posted January 3, 2008 i know lol... but then you can post your thorghts while checking. Free icons for your programs
DirtDBaK Posted January 3, 2008 Posted January 3, 2008 (edited) What you wrote here is very inefficient and really just hard for users to expand on expandcollapse popupFunc AV_check() ;Anti-Virus If's ;Norton GUICtrlSetData($P_bar, 15) GUICtrlSetData($Status, "Status: Checking Norton...") If FileExists(@ProgramFilesDir & "\Norton Internet Security\nisoptui.exe") Then GUICtrlSetData($AV_ListView_1, "Norton Protection Center | Found") Else GUICtrlSetData($AV_ListView_1, "Norton Protection Center | Not Installed") EndIf sleep(1000) GUICtrlSetData($P_bar, 20) ;Avast! GUICtrlSetData($Status, "Status: Checking Avast!...") If RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\ashAvast.exe", "") Then GUICtrlSetData($AV_ListView_2, "Avast! | Found") Else GUICtrlSetData($AV_ListView_2, "Avast! | Not Installed") EndIf sleep(1000) GUICtrlSetData($P_bar, 25) ;AVG GUICtrlSetData($Status, "Status: Checking AVG...") If RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\AVGW.exe", "") Then GUICtrlSetData($AV_ListView_3, "AVG | Found") Else GUICtrlSetData($AV_ListView_3, "AVG | Not Installed") EndIf GUICtrlSetData($P_bar, 30) sleep(1000) reco() EndFunc I'm assuming by this point you're better that that in autoIT Therefore that should be a loop for each one that would read from a file make an INI file that is formatted like this [check_values] 1=Checking Norton...|1|\Norton Internet Security\nisoptui.exe 2=Checikng Avast...|2|HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\ashAvast.exe 3=Checking AVG...|2|HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\AVGW.exe What I did was the this Consider what would be read from the INI as a string that is delimited by the '|' and here is what each part means so lets say you do this StringSplit the iniread so then it says $return[1]=Status Bar text $return[2]=Check type 1=check for exe in @ProgramFilesDir 2=RegRead $return[3]=Either the RegKey or Location of the exe make your code a little more dynamic... static is more for noobs and I would hope that your on your way out of that phase. Also it seems like your learning how to spell... just nagging at you, you should know I'm kidding... Anyhow good luck Also you could add a 4th part to the string to put the web site address of where to download it You should make your program tell users that if they already have 1 anti-virus that it's EXTREMELY important not to get another or they can be blocked out of their computer. Edit: and to expand on something else ok, ok whats got in to you? I'm sorry! Sometimes I get a little red when people post scripts with dumb errors like MsgBox(1,'ere','ere' and they forget ')' it just makes me wonder why they didn't check it before posting...that just normally shows sings of laziness which is so common in this world anymore. And sorry to all if I'm just ranting need to get something out the closest person in my life and her home which I've had so many good times at burnt down and it meant a lot to me... So if i get red with anyone I'm sorry.. but I'm lucky she made it out alive. EDIT: For Justin Reno's reading pleasure I had to remove some of my spelling errors which there were 3. Edited January 4, 2008 by DBak [center][/center]
ashley Posted January 3, 2008 Author Posted January 3, 2008 What you wrote here is very inefficient and really just hard tfor users to expand on expandcollapse popupFunc AV_check() ;Anti-Virus If's ;Norton GUICtrlSetData($P_bar, 15) GUICtrlSetData($Status, "Status: Checking Norton...") If FileExists(@ProgramFilesDir & "\Norton Internet Security\nisoptui.exe") Then GUICtrlSetData($AV_ListView_1, "Norton Protection Center | Found") Else GUICtrlSetData($AV_ListView_1, "Norton Protection Center | Not Installed") EndIf sleep(1000) GUICtrlSetData($P_bar, 20) ;Avast! GUICtrlSetData($Status, "Status: Checking Avast!...") If RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\ashAvast.exe", "") Then GUICtrlSetData($AV_ListView_2, "Avast! | Found") Else GUICtrlSetData($AV_ListView_2, "Avast! | Not Installed") EndIf sleep(1000) GUICtrlSetData($P_bar, 25) ;AVG GUICtrlSetData($Status, "Status: Checking AVG...") If RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\AVGW.exe", "") Then GUICtrlSetData($AV_ListView_3, "AVG | Found") Else GUICtrlSetData($AV_ListView_3, "AVG | Not Installed") EndIf GUICtrlSetData($P_bar, 30) sleep(1000) reco() EndFunc I'm assuming by this point you're better that that in autoIT Therefore that should be a loop for each one that would read from a file make an INI file that is formatted like this [check_values] 1=Checking Norton...|1|\Norton Internet Security\nisoptui.exe 2=Checikng Avast...|2|HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\ashAvast.exe 3=Checking AVG...|2|HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\AVGW.exe What I did was the this Consider what would be read from the INI as a string that is delimited by the '|' and here is what each part means so lets say you do this StringSplit the iniread so then it says $return[1]=Status Bar text $return[2]=Check type 1=check for exe in @ProgramFilesDir 2=RegRead $return[3]=Either the RegKey or Location of the exe make your code a little more dynamic... static is more for noobs and I would hope that your on your way out of that phase. Also it seems like your learning how to spell... just nagging at you, you should know I'm kidding... Anyhow good luck Also you could add a 4th part to the string to put the web site address of where to download it You should make your program tell users that if they already have 1 anti-virus that it's EXTREMELY important not to get another or they can be blocked out of their computer. Edit: and to expand on something else ok, ok whats got in to you? im sorry! Sometimes I get a little red when people post scripts with dumb errors like MsgBox(1,'ere','ere' and they forget ')' it just makes me wonder why they didnt check it before posting...that just normally shows sings of lazinsess which is so common in this world anymore. And sorry to all if i'm just ranting need to get something out the closest person in my life and her home which I've had so many good times at burnt down and it mean a lot to me... So if i get red with anyone I'm sorry.. but I'm lucky she made it out alive im sorry but i dont understand what you saying... could you PM me an excample of that script.. and i agree with you with waht u said abiut bert. Free icons for your programs
DirtDBaK Posted January 4, 2008 Posted January 4, 2008 (edited) ok first let me say why did you quote my post look at how long it was... go back, edit that and fix it. And for crying out loud fix your damn spelling. Get firefox at least it knows how to spell However I figured that you couldn't do this so.... I did it for you... Replace the function AV_check and Def_check expandcollapse popupFunc Def_check() AV_check() endFunc Func AV_check() Local $tags = IniReadSection( @ScriptDir & "\DB.ini", "tag" ) ;Reads all the tags into an array If @error Then Msgbox(64,'Warning','You do not have an anti-virus database for this program') ;if there was an error reading the tags Return 0 Else For $i = 1 to $tags[0][0] step 1 ;Read[1] = Name ;Read[2] = Mode ;Read[3] = Path or RegKey $read = StringSplit($tags[$i][1], '|' ) ;Split the data that is read in that entry $installed = 0 If Not IsArray($read) Then MsgBox(16, "Error", "There was an error in your database") Return 0 Else GuiCtrlSetData($Status, 'Checking '&$read[1]&'...' ) ;Makes the message that says 'Checking XXXXXX...' If $read[2] = 1 Then ;If check type is 1 (If the file is in the ProgreamFilesDir ) If Not FileExists(@ProgramFilesDir&$read[3]) Then GUICtrlSetData($AV_ListView_1, $read[1]&"|Not Installed") Else GUICtrlSetData($AV_ListView_1, $read[1]&"|Found") $installed = Endif Endif If $read[2] = 2 Then ;Declares a RegRead Mode If Not RegRead($read[3], "") Then GUICtrlSetData($AV_ListView_1, $read[1]&"|Not Installed") Else GUICtrlSetData($AV_ListView_1, $read[1]&"|Found") $installed = Endif Endif Endif GUICtrlSetData($P_bar, ($i/$tags[0][0])*100) ;Set the percentage of completion Next EndIf Return $installed EndFunc ;Returns the number of installed applications found ;<=============You should make the prgm notify the user if more than one item is intstalled a msgbox comes up and warns them this ;could be harmful for there system and they may want to un-install one of the products... You'll also need an INI file in the same directory that will be called 'DB.ini' and the data in this INI should be: [tag] 1=Norton|1|\Norton Internet Security\nisoptui.exe 2=Avast|2|HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\ashAvast.exe 3=AVG|2|HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\AVGW.exe I tested it and it works fine so if it doesn't work for you then its your err. Also Take our all of your sleep codes.... Sleep(1000) nobody wants the wait I know you may feel like that makes your script look like its doing a lot of work but in the end it's just a plain waste. And if you didn't notice from my first post here is how you write the tags for the anti virus.. I'm going to explain this kindergarten style... The KEY is really just an acceding number notice 1=,2=,3= but really its really your choice The MODE is either 1 or 2 1 means that your looking for a file from @ProgramFilesDir 2 means that your performing a regread The LOCATION is either the file name of the exe (with a backslash) if using mode one IF using Mode 2 then its just the whole regkey Now you're going to put this together like so Key=Name|Mode|Location Can you handle this? And don't reply by quoting my whole post unless your nagging, commenting, or questioning ever sentence. EDIT: Notice now you can allow users to add new tags to check and the update process would be easier!!! 1 problem fixed and 1 major Improvement Edited January 4, 2008 by DBak [center][/center]
DirtDBaK Posted January 4, 2008 Posted January 4, 2008 (edited) Okay lets jump my case! Hey Justin I am using Firefox I'm sorry that I did not realize your trying to have a English class right now. Now that I know this I'll be sure to make this post as proper as I can. Although you and I both know it is very annoying when you can't read what somebody is saying and really do want to know. Yet that person is just to lazy to type it out. However I do not understand exactly why this is going to turn into a 'English' class when I was trying to point out some useful tips to Ashley and share some code. Now, if thats not good enough for yourself and Ashley I can stop trying to help. I honestly could care less about proper English, but sometimes I like to read things that were posted. I'm sorry to hear that your more concerned about punctuation and grammar then actually being able to read the content. Justin, if it would not over burden you could you find a spelling mistake in my post, after all you did say I need to learn better spelling. To top things off I have not had Moderators and AutoIT developers warning me to spell correctly. Thanks for your time reading this post, and I am so glad that you quoted that whole post of mine just because you knew that annoyed me. Edit: Justin, besides you should not worry yourself about what I say to ashley he/she can speak for themselves you don't need to, nor is it your place to. I would venture to guess that ashley was correct I should have sent that post in a personal message. Edited January 4, 2008 by DBak [center][/center]
JustinReno Posted January 4, 2008 Posted January 4, 2008 (edited) Okay lets jump my case! Hey Justin I am using Firefox I'm sorry that I did not realize your trying to have a English class right now. Now that I know this I'll be sure to make this post as proper as I can. Although you and I both know it is very annoying when you can't read what somebody is saying and really do want to know. Yet that person is just to lazy to type it out. However I do not understand exactly why this is going to turn into a 'English' class when I was trying to point out some useful tips to Ashley and share some code. Now, if thats not good enough for yourself and Ashley I can stop trying to help. I honestly could care less about proper English, but sometimes I like to read things that were posted. I'm sorry to hear that your more concerned about punctuation and grammar then actually being able to read the content. Justin, if it would not over burden you could you find a spelling mistake in my post, after all you did say I need to learn better spelling. To top things off I have not had Moderators and AutoIT developers warning me to spell correctly. Thanks for your time reading this post, and I am so glad that you quoted that whole post of mine just because you knew that annoyed me.Edit:Justin, besides you should not worry yourself about what I say to ashley he/she can speak for themselves you don't need to, nor is it your place to. I would venture to guess that ashley was correct I should have sent that post in a personal message.I'm not trying to have an English class, you turned it into one. I never said that any of your posts needed to be proper, just saying to use better grammar and spelling right when you nag about it. Your tips were not very helpful as how rude they were to Ashley. And again, I never said that English was above the legibility of a post. I did happen to find one a spelling mistake, AutoIt is not spelled AutoIT. It doesn't matter if a moderator or an administrator warned you at all, I don't recall a moderator warning Ashley about every unreadable post. I did quote your whole post just in case you tried to rework it to make you look better. You shouldn't even worry about Ashley, he can take care of himself, you don't need to get involved either. And besides, calm down, I just told you to use better English. I'm done.Ashley, sorry for hijacking this thread. Edited January 4, 2008 by JustinReno
WolfWorld Posted January 4, 2008 Posted January 4, 2008 Here the script you want It work fine now expandcollapse popup#NoTrayIcon Global $file_output Global $path_index = 'C:\Program Files', $search = 'mu' Cmdindex() Search() Func Cmdindex() $filelong = FileGetLongName($path_index) If StringRight($filelong, 1) <> '\' Then $filelong = $filelong & '\' Index($filelong) MsgBox(0, '', $file_output) EndFunc ;==>Cmdindex Func Index($path) Local $search, $file, $Fullpath $search = FileFindFirstFile($path & '*') If $search = -1 Then Return While 1 $file = FileFindNextFile($search) If @error Then ExitLoop $Fullpath = $path & $file If StringInStr(FileGetAttrib($Fullpath), 'D') Then Index($Fullpath & '\') Else $file_output &= $Fullpath & @LF EndIf WEnd FileClose($search) EndFunc ;==>Index Func Search() Local $re $split = StringSplit($file_output, @LF) For $i = 1 To $split[0] If StringRight($split[$i], 3) = 'exe' Then If StringInStr($split[$i], $search) Then $re &= $split[$i] & @LF EndIf Next MsgBox(0, '', $re) EndFunc ;==>Search Main project - Eat Spaghetti - Obfuscate and Optimize your script. The most advance add-on.Website more of GadGets!
ashley Posted January 4, 2008 Author Posted January 4, 2008 dude... im sorry about my english... ive allways been crap at it and ill test both those code in a bit... Thanks... And By the way BETA Version 2. will be release 2day or 2morrow. Free icons for your programs
ShinyMetalGuy Posted January 4, 2008 Posted January 4, 2008 Nice! Norton, in my OPINION, is the best. (not saying a fact ) I know one thing: I'm covered with Windows Defender, Windows Firewall, Norton AntiVirus (eek: note to self: subscription expires in 40 days!), and a whole bunch more security software.
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