ILLBeBack Posted December 19, 2009 Share Posted December 19, 2009 Datenshi, In case you haven't discovered it yet, AutoIt v3.3.2.0 (just released), breaks RQ 2.4. But it's not too bad! The following is what I did to get it running again. The original coding is commented and the new coding follows. The 5th item is new: ;~ Opt("OnExitFunc", "closeclean") OnAutoItExitRegister("closeclean") ;~ InetGet($DownloadFinalLink, $DownloadFolderPath & $FileName, 1, 1) ; start download. $hDownload = InetGet($DownloadFinalLink, $DownloadFolderPath & $FileName, 1, 1) ; start download. ;~ While @InetGetActive While InetGetInfo($hDownload, 2) = False ;~ $BytesRead2 = @InetGetBytesRead $BytesRead2 = InetGetInfo($hDownload, 0) ;; New line, place after the Wend for While InetGetInfo($hDownload, 2) = False InetClose($hDownload) ILLBeBack Link to comment Share on other sites More sharing options...
rahulwithu Posted December 19, 2009 Share Posted December 19, 2009 (edited) Hello Friends, Windows Edition: WINDOWS 7 ULTIMATE System: RATING: 2.6 PROCESSOR: AMD ATHLON 64*2 DUAL CORE PROCESSOR 3800+ 2.00GHZ INSTALLED MEMORY (RAM): 3.00GB (2.50GB USABLE) SYSTEM TYPE: 32-BIT OPERATING SYSTEM Do you think that my Operating System is causing this issue? If YES, shall I downgrade my PC's Operating System to XP/VISTA? Thanking you, rahulwithu Edited December 19, 2009 by rahulwithu Link to comment Share on other sites More sharing options...
rajeshontheweb Posted December 19, 2009 Share Posted December 19, 2009 can you add further clipboard monitoring, just like flashget, fdm, etc do? http://www.autoitscript.com/forum/index.php?showtopic=56158&st=0&p=426033&#entry426033 has it all. and also, when we click on add from clipboard, if there is any rs links available, it takes it. but badly formatted rs links or unavailable rs links are not notified. Started late is much better than having never started it!!!!Failure is another step towards success. I've been messing around with: Adding Entry to 'Hosts'File Information Lister (Logger)Yet Another AutoIT Error Handler Yet Another AutoIT Error Handler & Debugger Control your App's TaskBar Button YCurrency Ticker (Latest Release : 16 Apr 2009)_WinInetInternetCheckConnection UDF Symantec Definitions Lister UDF _GetLocalIPAddresses UDF UDF to get Special Folder Information WMI_NetworkAdapterConfiguration2Array WMI_CDRomDriveCapabilities _ScriptExists - Check if your au3 script is running!! Uninstaller UDF Get Version for your application (at script level or compiled stage) Uninstaller Pro - faster alternative to windows application removal applet Link to comment Share on other sites More sharing options...
ILLBeBack Posted December 19, 2009 Share Posted December 19, 2009 @rahulwithu, I'm running Windows 7 and am not having any problems with RQ in it, so I would not think XP will help you. @rajeshontheweb, RQ already has an option to monitor the clipboard, at least while the main window is open (see "Monitor Clipboard For Links"). Is that what you are looking for? ILLBeBack Link to comment Share on other sites More sharing options...
Recce Posted December 20, 2009 Share Posted December 20, 2009 Thanks 4 updating RapidQueuer! Version 2.4 is running great. /Thomas Link to comment Share on other sites More sharing options...
Phil Viton Posted December 21, 2009 Share Posted December 21, 2009 (edited) I'm having a problem with the .au3 version of RQ_2.4. I have both the exe and the au3 in the same folder; if I run the exe with -as it starts correctly; but then if I run the au3 with the same parameter (1) it doesn't autostart: I get the GUI selection box; and (2) if I click Start, I consistently get an error message: line 269: $FileStatusCode=$InfoArray[4] Array variable has incorrect number of subscripts, or subscript dimension range exceeded. ADDED: the non-autostart seems to be fixed if I call autoit3.exe with the au3 script name as a parameter; but the line-269 error is still there. The au3 file has #AutoIt3Wrapper_Res_Fileversion=2.4.0.0 Can anyone see what's going wrong? Thanks! Edited December 21, 2009 by Phil Viton Link to comment Share on other sites More sharing options...
Phil Viton Posted December 21, 2009 Share Posted December 21, 2009 Maybe I'm doing something wrong, but it looks to me as if, when you run RQ with the autostart parameter and either linklist.dat doesn't exist or is of size 0, RQ has a problem closing gracefully. RQ puts up an empty notepad file; if you try to close it, RQ adds another, and so on. I've had to close RQ down using the task manager. If I'm not doing something wrong, then presumably the fix is for RQ to check the size of linklist.dat when it starts, and if the file can't be found or is size zero, then RQ should just close. (Obviously, only relevant under autostart). Regards, Link to comment Share on other sites More sharing options...
Datenshi Posted December 21, 2009 Author Share Posted December 21, 2009 (edited) Phil, they're both the same version, its not possible to run the au3 without loading it with autoit3.exe as its a sourcecode which has to be interpreted. Its not a bug, its normal. $FileStatusCode=$InfoArray[4] ,is suppose to contain data receieved from Rapidshare API. If you're comfortable editing the source, put Filewrite("filestatusdump.txt",$APIQuery[1]) BEFORE $FileStatusCode=$InfoArray[4] and send filestatusdump.txt content to me by PM, it'll dump the info received from the rapidshare API. Maybe I'm doing something wrong, but it looks to me as if, when you run RQ with the autostart parameter and either linklist.dat doesn't exist or is of size 0, RQ has a problem closing gracefully. RQ puts up an empty notepad file; if you try to close it, RQ adds another, and so on. I've had to close RQ down using the task manager. If I'm not doing something wrong, then presumably the fix is for RQ to check the size of linklist.dat when it starts, and if the file can't be found or is size zero, then RQ should just close. (Obviously, only relevant under autostart). Regards, You're not doing something wrong, running cmd -as/autostart with an empty linklist.dat will spawn a new notepad window until links are added. This is a bug. Try this to fix it. Change in function CleanLinklist(): If @error Then MsgBox(0, "Failed", "Failed to find any rapidshare links" & @CRLF & "Make sure that you fill LinkList.dat or/and import links from clipboard before pressing Start.") Run("Notepad.exe " & $LinklistFilePath) Return SetError(1) EndIf Replace with: If @error Then MsgBox(0, "Failed", "Failed to find any rapidshare links" & @CRLF & "Make sure that you fill LinkList.dat or/and import links from clipboard before pressing Start.") Run("Notepad.exe " & $LinklistFilePath) If $CMDAutoStart = 1 Then Exit Else Return SetError(1) Endif EndIf Edited December 21, 2009 by Datenshi RapidQueuer 2.4 - For Rapidshare.comOpensubtitles Hashing FuncRevision3 PlayerGTPlayer BetaIMDB & Poster Grabber v1.3Fetgrek.com - My Website Link to comment Share on other sites More sharing options...
Datenshi Posted December 21, 2009 Author Share Posted December 21, 2009 (edited) Just to let u guys know, I'm working on converting to 3.3.2.0. ILLBeBack , was nice enough to post what has to be changed in order to get the current v2.4 to work. So if you want to update your AutoIT then i suggest you read that post in order to get RQ source to work. But there's a couple of other changes that allows for some optimizations and fixes that previously had to be worked around, which I'm working on atm. For example, they bug fixed proxy authentication which wasn't working with 3.3.0.0, id like to add support for that. Oyeah, I'm also working on a way to change and view the links loaded into RQ while its downloading. But atm its pausing the script which is "dangerous" seeing as Rapidshare has a time limit on their tickets. Edited December 21, 2009 by Datenshi RapidQueuer 2.4 - For Rapidshare.comOpensubtitles Hashing FuncRevision3 PlayerGTPlayer BetaIMDB & Poster Grabber v1.3Fetgrek.com - My Website Link to comment Share on other sites More sharing options...
rajeshontheweb Posted December 22, 2009 Share Posted December 22, 2009 not that i may even use it ever again but having used it once, i felt a few things that might be useful clipboard monitoring - yes its there already, only i didnt realise it is paused when download is in progress and more, i would like to see a gui built around .. rather than just a progress bar only. there better be a log file (of course optional) which would write all links used so far with start and finish times. most important, till download is finished, we better add .tmp or .rq to the file extension just to identify its an incomplete file. ie, now we have xxyy.txt being downloaded which is 20 MB and there was a power failure / internet disruption, i wont be able to recognise if the 10 MB file downloaded is correct or not! Started late is much better than having never started it!!!!Failure is another step towards success. I've been messing around with: Adding Entry to 'Hosts'File Information Lister (Logger)Yet Another AutoIT Error Handler Yet Another AutoIT Error Handler & Debugger Control your App's TaskBar Button YCurrency Ticker (Latest Release : 16 Apr 2009)_WinInetInternetCheckConnection UDF Symantec Definitions Lister UDF _GetLocalIPAddresses UDF UDF to get Special Folder Information WMI_NetworkAdapterConfiguration2Array WMI_CDRomDriveCapabilities _ScriptExists - Check if your au3 script is running!! Uninstaller UDF Get Version for your application (at script level or compiled stage) Uninstaller Pro - faster alternative to windows application removal applet Link to comment Share on other sites More sharing options...
Datenshi Posted December 22, 2009 Author Share Posted December 22, 2009 (edited) rajeshontheweb, Having used RQ once, you obviously have much too little knowledge about RQ that you should really consider checking twice before having opinions/"suggestions". Actually, I question if you even looked which features are available. Here's why:clipboard monitoring - yes its there already, only i didnt realise it is paused when download is in progressYou can import links using the clipboard, Traymenu > Add more links > Import from clipboard. The monitoring mode is disabled to prevent long periods of script halt if the Msgbox isn't clicked, Rapidshare have time-limits on their tickets("session expired"), and seeing as AutoIT is singlethreaded its a limitation of the scripting language and not RQ.and more, i would like to see a gui built around .. rather than just a progress bar only. You're using the wrong software, I value RQ's slim size,minimalistic and discrete design. There's other things to do on a PC then to watch your downloads. There's plenty of other (clunky) downloaders which better suits your need.there better be a log file (of course optional) which would write all links used so far with start and finish times.I'm assuming poor English here, and the answer is "There better NOT be a log file!", Whats being logged are Errors, why log how long a download took? This isn't a benchmark tool.If you want to know which downloads are done, have a look in your downloads folder.most important, till download is finished, we better add .tmp or .rq to the file extension just to identify its an incomplete file. ie, now we have xxyy.txt being downloaded which is 20 MB and there was a power failure / internet disruption, i wont be able to recognise if the 10 MB file downloaded is correct or not!Sigh, I assume you don't find it hard to recognize which files are being downloaded under normal circumstances. In case of a power failure your link wont be deleted from the linklist, so when you start RQ the next time, it will check the filesize of your file and compare it to the filesize of the link in your Linklist. If the online file is bigger and "overwrite rule" is enabled in options(default on), It will be overwritten with the new file. If there's an internet disruption long enough for RQ to loose connection to Rapidshare, it will be written to errorlog and again, the link wont be deleted from linklist. If there's just a few lost packets which result in a corrupt file, RQ will do an MD5 checksum check on the finished file to make sure its 100% working, before deleting the link from the linklist. Either way, you should be able to identify a broken file by other means then RQ, such as "I just had a power failure, and my file isn't working! maybe it was interrupted!" < BINGO! Edited December 22, 2009 by Datenshi RapidQueuer 2.4 - For Rapidshare.comOpensubtitles Hashing FuncRevision3 PlayerGTPlayer BetaIMDB & Poster Grabber v1.3Fetgrek.com - My Website Link to comment Share on other sites More sharing options...
rajeshontheweb Posted December 22, 2009 Share Posted December 22, 2009 1) yeah i did use that, thats why i had mentioned earlier that it would have been better to monitor it live - but i noticed it is already available. i just didnt realise that while download is active, live monitoring of clipboard is disabled and i did use the option to import from clipboard. one thing i didnt mention was that rapidshare.de links were not available for import from clipboard this could be intentional as language barriers might have made it harder to code it - so i didnt mention it. 2) point taken, it was just my opinion.. 3) point taken, yet my request was not focused on time taken but links list being made available. because the link is deleted from the list and in case i wanted to keep the links for future use --- which i did a couple of items i wanted i have saved them in a text file for future use. if i am to rephrase my feature request it would be ' a log file to log files that have been downloaded (after it is removed from active links list, would be welcome' Anyways, no logs doesnt bother really. 4) this point came to my mind first time i went to the d/l folder from the tray menu - i saw 4 files in download list, when i opened one of them it was not complete but yet the file was shown available in explorer, i still couldnt use it and then realised that the file size was smaller and when i checked it said it is 80% only complete.(pretty dumb fault , i know) and once i had forced a PC reboot while RQ was active and the link list was lost for unknown reason (which may or may not relate to RQ - i was unsure) thanks a lot for taking time to explain it all. keep up the good work.. Started late is much better than having never started it!!!!Failure is another step towards success. I've been messing around with: Adding Entry to 'Hosts'File Information Lister (Logger)Yet Another AutoIT Error Handler Yet Another AutoIT Error Handler & Debugger Control your App's TaskBar Button YCurrency Ticker (Latest Release : 16 Apr 2009)_WinInetInternetCheckConnection UDF Symantec Definitions Lister UDF _GetLocalIPAddresses UDF UDF to get Special Folder Information WMI_NetworkAdapterConfiguration2Array WMI_CDRomDriveCapabilities _ScriptExists - Check if your au3 script is running!! Uninstaller UDF Get Version for your application (at script level or compiled stage) Uninstaller Pro - faster alternative to windows application removal applet Link to comment Share on other sites More sharing options...
Virgus Posted December 22, 2009 Share Posted December 22, 2009 Hello Datenshi, I love your RQ, thanks for sharing it!I'd like though to use it to do regular recurrent downloads (specifically the NOD32 antivirus cumulative updates)and I'd like to send by command-line the single link to add and download instantly.I can use separate settings.ini file but can I use a separate LinkList.dat file?If this would be possible I could write my separate Linklist.dat file, and launch RQ with it's specific ini file.One last item of my wish list is to extend the autostart option or create a silent option in the ini file settings, in case I'd like to exit RQ without shutting down the PC and without having popup messages. In this way I could script regular updates automatically (check -> download -> unrar -> install).Ciao e buon Natale!Virgus. Link to comment Share on other sites More sharing options...
ILLBeBack Posted December 30, 2009 Share Posted December 30, 2009 Beginning yesterday, the array $GetCounterStart is not always being defined in function "Wait" or case 2 by the expression StringRegExp($SubmitRequest[1], "(?i)var\sc=(\d{1,3});", 1). I've made a couple of attempts to get RQ to keep trying, but have failed miserably.I'm not certain, but I think this is only happening during the day when RS is heavily loaded.ILLBeBack Link to comment Share on other sites More sharing options...
Datenshi Posted January 1, 2010 Author Share Posted January 1, 2010 (edited) Back in Business! Happy New Year everybody ILLBeBack, Sounds like the same bug that was plaguing 2.3. At least the same variable fails in the same type of situation, strange that it suddenly started appearing again, as it seemed i squashed it before. Either way, I'll look into it. I've btw added a way to see and remove links from the linklist during downloads. But the feature needs some tweaking, I'm not planning on allowing reorganizing of links atm because it'll take a lot of code and cause problems, maybe for later. I'd like to work on stability and bug fixes for the next version, so it probably wont have that many new features. Edited January 1, 2010 by Datenshi RapidQueuer 2.4 - For Rapidshare.comOpensubtitles Hashing FuncRevision3 PlayerGTPlayer BetaIMDB & Poster Grabber v1.3Fetgrek.com - My Website Link to comment Share on other sites More sharing options...
ILLBeBack Posted January 1, 2010 Share Posted January 1, 2010 Datenshi, I was thinking the same thing! It appears that RS has changed the contents of its web page after RQ 2.4, but only sometimes. If I'm understanding correctly the process that RQ is going through when this bug occurs, RQ is obtaining the URL of the actual download from the web page, and assumes the waiting period is also embedded on that page, then calls the "Wait" function where it discovers variable "c" is missing, then crashes because $GetCounterStart has not become an array. Here's the error shown in Scite's console window when the crash occurs in the Wait function for case 2: ... ==> Subscript used with non-Array variable.: $timereturn = Timecalc($GetCounterStart[0] - $time) $timereturn = Timecalc($GetCounterStart^ ERRORAttached is a copy of the web page contained in RS's variable $SubmitRequest[1] when the crash occurs. I hope it will help you identify the problem. Being able to view and remove links from the list while downloading will be a very welcomed improvement! Happy New Year, ILLBeBackMissing_Var_C.zip Link to comment Share on other sites More sharing options...
Datenshi Posted January 1, 2010 Author Share Posted January 1, 2010 (edited) So hm, i don't think Errorchk has a regexp match for that error. <p align="justify">Unfortunately right now our servers are overloaded and we have no more download slots left for non-members. Of course you can also try again later.</p> Change to this, basically i just added another regexp to the filters: Local $Filter[8] = ['', '(?i)again\sin\sabout', '(?i)IP\saddress', '(?i)slots\savailable', '(?i)session\shas\sexpired', '(?i)cannot\sbe\sprovided', '(?i)Currently\sa\slot','(?i)download\sslots'] Local $FilterDesc[8] = ['No String', '15min Wait', 'Max 1 download/ip simultaneously', 'No download slots available on rapidshare', 'Download ticket expired', 'Download could not be provided', 'Too many users downloading','Servers overloaded'] ; and in the switch loop below, change Case 3, 6 [b]To[/b] Case 3, 6, 7 I'm testing it now, but i haven't had a crash since 2.4 release. Hope i trigger it, It'll explain why its proceeding with the download even if an error is present. Edited January 1, 2010 by Datenshi RapidQueuer 2.4 - For Rapidshare.comOpensubtitles Hashing FuncRevision3 PlayerGTPlayer BetaIMDB & Poster Grabber v1.3Fetgrek.com - My Website Link to comment Share on other sites More sharing options...
ILLBeBack Posted January 1, 2010 Share Posted January 1, 2010 I implemented these changes and am testing then now. So far so good as RQ did not crash after four 2 minute waits for a slot, where before it crashed after the first wait. I'll let you know how thing go when RS finally gives up a slot. ILLBeBack Link to comment Share on other sites More sharing options...
ILLBeBack Posted January 2, 2010 Share Posted January 2, 2010 In about 6 hours of continuous testing, RS has issued slots to RQ only 3 times. The good news is RQ did not crash using the new filter, and downloaded 3 files. Now it looks like RS is allocation slots again, and RQ is working normally. As a double check after the first hour and third hour of testing with the new filter, I reverted to the previous filter and RQ crashed again. IMO, the addition of the new filter appears to have fixed the issue! Thanks Datenshi! ILLBeBack Link to comment Share on other sites More sharing options...
furrycow Posted January 2, 2010 Share Posted January 2, 2010 Hey, i've also had a lot of problems with the thing of recent, although it seems to have been fixed now, thanks! However, i mean it could happen again, when they change it, so i mean ive edited the function a little, which although doesnt cure all future problems, it should at least make the program usable until a proper fix comes in the future: expandcollapse popupFunc Errorchk($Errorsrc, $filterset = 0); might be hard to read, but this func checks for errors and handles them as instructed. Easily modifiable. Switch $filterset Case 0 ; API error filter Switch $Errorsrc Case 0 ErrorOutput("File not found") Return 0 Case 1 To 2, 6 ; all OK If $iSize <= 209999667 Then Return 1 ; checks if file is over 209999667 bytes(exact size to trigger no 200mb dl's for free users. Dont ask why i found out :P ) ErrorOutput("File over 200mb") Return 0 Case 3 ErrorOutput("Server down") Return 0 Case 4 ErrorOutput("File marked as illegal") Return 0 Case 5 ErrorOutput("Anonymous file locked, because it has more than 10 downloads already") Return 0 EndSwitch Case 1 ; page2-source error filter Local $Filter[9] = ['', '(?i)again\sin\sabout', '(?i)IP\saddress', '(?i)slots\savailable', '(?i)session\shas\sexpired', '(?i)cannot\sbe\sprovided', '(?i)Currently\sa\slot','(?i)download\sslots',' '] Local $FilterDesc[9] = ['No String', '15min Wait', 'Max 1 download/ip simultaneously', 'No download slots available on rapidshare', 'Download ticket expired', 'Download could not be provided', 'Too many users downloading','Servers overloaded','Unknown error'] If StringRegExp($Errorsrc, "(?i)<h1>Error</h1>") Then $Errorsrc = StringRegExp($Errorsrc, "(?s)(?i)<h1>Error</h1>(.*?)<script>", 1);_StringBetween($Errorsrc, '<div class="klappbox">', '<script>');'<div class="untermenue">') $Errorsrc = $Errorsrc[0] For $i = 1 To UBound($Filter) - 1 If StringRegExp($Errorsrc, $Filter[$i]) > 0 Then Switch $i ; Return 0 = Skips to next link, Return 1 = Continue with current link Case 1 ; 15min wait mode Wait(1) Return 1 Case 2 ; IP in use, Max 1 download/ip simultaneously ProgressSet(0, "Max 1 download/ip simultaneously" & @CRLF & "Checking again every 30sec until its ready.", "ERROR") TraySetToolTip("RapidQueuer" & @CRLF & "ERROR - Max 1 download/ip simultaneously" & @CRLF & "Checking again every 30sec until its ready.") Wait(3, 30000) ExitLoop Case 3, 6, 7 ; No slots for free users/too many users downloading/server overloaded, trying again in 30s ProgressSet(0, $FilterDesc[$i] & @CRLF & "Trying again in 30sec", "Non-Critical Error") TraySetToolTip("RapidQueuer" & @CRLF & $FilterDesc[$i] & @CRLF & "Trying again in 30sec") Wait(3, 30000) ExitLoop Case 4 ; session expired ; this should never happen but who knows? FileWriteLine($ErrorLinksFilePath, "[" & @YEAR & "/" & @MON & "/" & @MDAY & "]" & "-[" & @HOUR & ":" & @MIN & ":" & @SEC & "] -- > " & $DownloadLinkList[$x] & " ## " & $FilterDesc[$i]) $Errorlinks = 1 Return 0 Case 5 ; download could not be provided ErrorOutput($FilterDesc[$i]) Return 0 Case 8 ProgressSet(0, $FilterDesc[$i] & @CRLF & "Trying again in 30sec", "Unknown Error - Please Report!") TraySetToolTip("RapidQueuer" & @CRLF & $FilterDesc[$i] & @CRLF & "Trying again in 30sec") Wait(3, 30000) ExitLoop EndSwitch EndIf Next EndIf EndSwitch Return 1 EndFunc ;==>Errorchk In my mind this should work, maybe even add a FileWrite into Case 8, so that the html can be saved into a log file and make debugging even easier? Of course im not really able to test this, but does it make sense? I've added the ExitLoops into the Cases that dont Return, because otherwise, once it has done Wait(3), it will finish the loop, and of course all of them will return a, " ". Instant Lockerz Invite - www.instantlockerzinvite.co.uk 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