I was surfing around on SuperUser today, and found a mention to a tool from Apple that I hadn’t heard of before. It’s called the iPhone Configuration Utility, which allows you to examine logs from your iPhone or iPod Touch, to apply configuration and provisioning profiles, and more. The tool is very interesting! [Download: Windows|Mac]
Latest Entries »
Today, somehow or other, I stumbled upon the distributed processing app called GIGRIB. Developed by Pingdom, “Pingdom GIGRIB is a unique, distributed website monitoring service. GIGRIB users can add websites they want monitored, and in return their computers become a part of the GIGRIB monitoring network.”
So, I fired it up, inputed the domains I wanted it to monitor for me, and let it run. Of course, I became curious in how the app is uploading data back to Pingdom, how it’s checking uptimes (well, duh, it’s just going to the page and looking for a response), and more, so I opened my HTTP packet sniffer/web debugging proxy of choice: Fiddler. However, GIGRIB’s requests weren’t displaying there and I was too lazy to change the configuration to avoid this problem, so I decided to take revenge on GIGRIB. Naturally, when wanting to make a mild impact (meant for hilarity) on an application, the tool of choice is Resource Hacker (not that it only does mild impacts, it can do LOTS of stuff – I love ResHacker, it rocks!).
I hadn’t used ResHack
er in some time, so I didn’t bother trying to find it on my drive. Instead, I got the latest version, which turned out to have some cool new features – it visualizes the GUI of the app you’re editing and lets you change all aspects of the layout with ease, it provides a more streamlined “compile scripts” action to quickly apply changes to the file, and more! I was intrigued by these new additions, so I decided to try them out.
After changing some of the text, GUI positioning, icons, and more in GIGRIB, I got a little bored, because GIGRIB doesn’t have too big a UI (really, there’s only like two windows that have info in them – settings and about). For some reason, I had a sudden urge to mess around with some Windows configuration files. My (first) target of choice: the text of the Start button on the taskbar.
Yes, that may sound lame, but I guess I was just playing around with Start Menu customization before the hack, which is probably where the idea came from. I opened up %windir%\explorer.exe in ResHacker, and browsed to “String Tables –> 37 –> 538″ and changed the string from “start” first to “ocrap”, and then decided to switch it to a 6-letter phrase instead. After saving this final version (“ocrap” worked perfectly), I killed explorer.exe and tried to restart it thru Task Manager, when I get an error: “C:\Windows\explorer.exe in not a valid Win32 executable.” I tried re-saving, switching it back to “start” and saving again, but it did not help. Thankfully, I knew that ResHacker saves backups automatically, so I had a backup called C:\Windows\explorer_original.exe. I ran this one to fix the problem. In the C:\Windows directory, I tried again and again to undo the changes and restore to the backup, but Windows would keep resisting. After a few attempts, I thought that changing the files around in Safe Mode would do the trick, but as I was rebooting, I had a thought: Windows has many fail-safes, so why can’t this be one of them? If explorer.exe gets corrupted, would it be restored with a restart?
Well, it worked! This is why I love Windows – if something is messed up, there’s always a way to recover it, however simple or difficult.
Start menu button string location in %windir%\explorer.exe:
String Table –> 37 –> 1033 –> 578 = Windows XP default theme
or
String Table –> 38 –> 1033 –> 595 = Windows Classic theme
Note: I have nothing against GIGRIB or Pingdom, as I believe that both company and product are useful, intriguing, and helpful. I am an avid user of GIGRIB, and my experimentation with it was in no way a signal of protest against it, nor does it affect its functionality in any way. GIGRIB is a very generous program that I enjoy, so I must thank Pingdom for creating it.
Disclaimer: I am not in any way responsible for any uses (and their consequences) of the method outlined above. This is for informational use only.
Plain and simple, I detest Internet Explorer. Why, some may ask? Internet Explorer is a retarded browser whose proprietary graphic rendering engine sucks, whose scripting engine fails, whose security does not exist AT ALL, and much much more. Thus, I don’t use IE, and I haven’t used it since a very very long time ago. I switched to Firefox when I realized how sucky IE is, and then when Google Chrome began as an open source developer project I signed up and started using it. But still, even if you don’t use Internet Explorer, it is responsible for many things in Windows, as it is directly tied-in to Internet Options and Connections.
Two days ago, I was writing an application that scraps a web database into SQL Server, when suddenly, Google Chrome, Visual Studio, and numerous other programs stopped connecting to the internet. The only major ones that still worked were Firefox and Google Talk. At first, I blamed my full CPU and thought that my computer was just crashing, but when the problem continued the next day, I knew something was up. As I noticed that the problem was spread out over many different programs, I knew that it had something to do with the internet settings that the default socket uses – Internet Explorer. Also, many people have had this problem, as reported on the internet. The fix is just as elusive as the culprit itself.
Some people said that reinstalling Internet Explorer would do the trick, yet this had no effect. While scrambling over the interwebz looking for a fix, I remembered that the HTTP proxy Fiddler automatically works with most programs including Internet Explorer, Google Chrome, Visual Studio, and more, but with Firefox it doesn’t. To successfully debug out of Firefox, you have to go into the Settings and set it to use a special proxy for Fiddler, which would mean using the default socket! This is when I realized that the whole problem was related to a proxy server mix-up. I quickly jumped into the Connections tab in Internet Options, hit LAN settings, and voila! The “Use proxy server…” checkbox was selected, with no values in the textboxes for the configuration of said proxy! After unchecking the proxy server checkbox and checking “Automatically configure settings…”, everything began to work.
Which brings me to ask, why would some program that I never use suddenly think that my internet connection has changed? Did it think I had some problems conecting so a proxy server must be required? This bug is just retarded in my opinion, as the connection changes for no reason whatsoever when you don’t even ask it to change! Really, Microsoft’s IE programmers are morons, if they have bugs like this, not to mention this bug. Geez, Microsoft – you’re abusing your power!
If you’re a .NET developer, admit it: you’ve at least once felt curious about how the underlying APIs behind the .NET Framework are coded, how certain functions are implemented, or whether one core function is more efficient that another. Well, this is where the trusty program named .NET Reflector comes in. As the title suggests, Reflector uses .NET reflection and ILDASM processing. It is the decompiler of the .NET world, and allows you to view source code of DLLs or executables in multiple languages (including C#, VB, C++, Delphi, IL, and more) with ease. It is very interesting to examine how the brilliant programmers at Microsoft sculpted the inner workings of the programming framework that drives many applications today. With this tool, you can accomplish just that and much much more. The Reflector was originally created by Lutz Roeder, but has been acquired by Red Gate Software. The program is free for all to download and use, and it can even Reflect upon itself! Now that is true irony. You can snag a copy over at the Red Gate site.
