Jump to content

Leaderboard

Popular Content

Showing content with the highest reputation on 02/25/2012 in all areas

  1. I decided not to make a separate file but to avoid creating a longer sourcefile record in the latest uploaded Beta version of Obfuscator. This means that when you have a continuationline which is combined longer than 4095, Obfuscator will merge with a max length of 4095 thus creating multiple lines and in that case the linenumbers will not match anymore. A warning will be displayed of this fact:
    1 point
  2. Autoit can pull the power cord from the modem. Just build a little usb robot that responds to a value in a file, have AutoIT update this file. Attach the robot to the wall near the power socket, and attach the robot arm to the power cord itself. It would work. I'm sure of it. Just make sure you don't remove the power to the Autoit computer. That would be a fail that would require a manual fix.
    1 point
  3. Talking about proxies, some time ago I set up a little system to autoban hack attempts and autoban IPs when automation is detected in the wrong places on my site, about now I have a huge IP blacklist so I made a script to list IP addresses that were pingable, about only 15 of them responded and as I was accessing them through chrome, I got this very interesting one "66.96.226.52". If you go to it, there will be an apache index and a directory called "d", inside that directory will be a file called "list.txt", inside "list.txt" is a huge list of proxy servers, I've never seen so many proxies listed in one place, I tried fixing a script to spider the urls and autoban any IP listed but got stuck in the regexp required to detect them in certain urls that the script followed and manually blocking them would be a huge effort and sometimes the spider would veer off course and end up following advertisements.
    1 point
  4. Melba23

    DllCallbackRegister

    JohnOne, This is my hobbyist coder attempt to explain it - no doubt a guru will be along in a while and blind you with all sorts of wondeful pixie-dust. I have only used DLLCallBackRegister when I an subclassing controls - that means to replace the procedure that they execute when actioned. It works like this: - 1. You write a new procedure for the control so that it does something different when actioned, An example is my NoFocusLines UDF where I tell the controls not to honour the $WM_SETFOCUS message so as not to get the dotted lines - look at the _NoFocusLines_Proc function within the UDF. - 2. You now register the procedure by using DllCallbackRegister like this: $hNoFocusLines_Proc = DllCallbackRegister("_NoFocusLines_Proc", "int", "hwnd;uint;wparam;lparam")This reserves a chunk of memory that contains the code you want Windows to run later and returns a handle to the procedure you have now registered. You also need a pointer so Windows know where to find it: $pNew_WindowProc= DllCallbackGetPtr($hNoFocusLines_Proc) - 3. Now we can tell Windows to replace the current procedure for a control with the one we have registered: $aRet = _WinAPI_SetWindowLong($hWnd, -4, $pNew_WindowProc) - 4. And when that control is now actioned it will use our procedure and not the default one. In the case of my UDF I wanted to pass on all other messages to the default Windows procedure for the control - the handle to which is returned by the WinAPI call we made earlier. So I can do this by using a call to _WinAPI_CallWindowProc(The_Returned_Handle, $hWnd, $iMsg, $wParam, $lParam) as the final line of my replacement procedure. - 5. And then when you have done and want to exit, you have to do the reverse - reset the control to the normal procedure by using _WinAPI_SetWindowLong again and finally clear the memory you reserved with the original DllCallbackRegister call by using DllCallbackFree. Head hurting yet? M23 P.S. Do not use the Beta if you want to play with this function (or the UDF I mentioned above) as it is not working correctly - it is fine with 3.3.8.1.
    1 point
×
×
  • Create New...