Tips

HowTo: Enable Aero mode in Windows server 2008 R2

I recently was setting up a build server and chose Windows Server 2008 R2 to be the OS. Since I was also looking for something like a centralized deployment server for my development team to quickly reflash their testbeds, I was very h appy to see the 2008 R2 server’s “Deployment server” role…but, wait, this is a big saga and is for another post. This one is all about “Aero”!

After installation, I noticed my Windows server 2008 R2 booted in “Windows classic” mode. This was an eye sore, to say the least, after having used Windows 7’s themes. My machine has GeForce 9500GS along with the proper x64 driver. So I know it is capable of doing Aero. But, Windows “Personalization” option was not allowing me to select any Aero theme.

Quick googling showed me that I was not the first person trying to solve this – Here’s the link I used & found very helpful – http://software.intel.com/en-us/blogs/2009/01/09/windows-server-2008-r2-beta-aero-enabled-workstation/. Though I had “Desktop experience” feature installed, my “Themes” service was not enabled.

I set it to “Automatic” and started the service. But, still Windows was not allowing me to set the Aero theme. If you are facing the same issue, remember to reboot at this point — that is after enabling the “Themes” service, do reboot once. Once logged in again, you will be able to switch to Aero!

BTW, its been close to 2 years now since I posted here — was heads down on a project all the time :) . We did a Wireless Display solution that recently hit the market. Will post more on it soon.

HowTo: Streaming music/photos/videos to Wii

Wii doesn’t have in-built media client or DMA capabilities, but there is a workaround… :) If you don’t have Xbox360/PS3 or a dedicated DMA device, you can try out streaming from your PC to your TV via Wii using a program called Wiisic [Doesn't mean you cannot do this with Xbox360/PS3 in place]

Note that, you need to have Wii Internet Channel installed in your Wii. If you are trying to use your US-bought Wii outside US, with out a US credit card,try to use this trick.

How to setup Wiisic:

  • Download latest version of WiiSic [Direct link to 0.815 / Home page
  • Make sure you have a compatible JRE. All JRE1.5+ versions downloaded from Sun website are ok. Microsoft's JVM may not execute this JAR. At least, it didn't work for me under Vista.
  • Double click on Wiisic.jar. You should see the launch dialog shown below [for v0.815]. If it gives an error, make sure you are using the proper Sun JRE (not Microsoft’s).

WiisicMainDlg

  • Now you need to configure the settings. Choose the folder containing your media files first. Make sure you choose your network card from the drop down list in (3). Also. change the port to something like 8081. If you have a 16:9 supporting TV, choose the 16:9 proper player in (2). Following screen shown the settings I used in my computer.

WiisicMainDlgLaunched

  • Now switch on your Wii. Open the Wii Internet channel. Type the IP that is shown under (4) in Opera’s address bar. Wiisic should load now and start playing the stuff you chose under (1) above.

This has to proved to be the most effective inside-LAN-streaming-solution for me, till now. Let me know if you come across any other solutions. 

HowTo: Buy Wii points online from India

Though Nintendo hasn’t officially launched Wii yet in India, the number of Wiis in India *is* increasing. 3 of my friends, who returned from US last week, bought Wii :) I don’t know how they got hold of one, as it is in extremely high demand over there now!

One of the initial problems you’d face trying to setup the Wii in India is the power converter. You *cannot* plugin Wii directly in to one of our power sockets, it will just burn! Unless you want to do the burn-in (!?) test with your Wii, I suggest you go out and buy a 220-110v power adapter (stepdown). It is available in many wattages, for Wii a 50W or 100W should suffice.

The only other thing you’d find a bit problematic is buying Wii points. Mine is a US Wii, so whenever I try buying Wii points online, it asks for a credit card along with the US address / Zip code blah blah…this one can be real irritating! Don’t lose heart though. There is a simple/effective method (Based on this post). The trick is to find a region which accepts Indian credit cards with out asking too many questions :) The region found by the original poster is Brazil.

How to buy Wii points from India (Thanks to StringFellow):

  • Change your Wii country to Brazil. You will find this option in Wii Settings section. Wii will now ask you to confirm the user agreement for the new region. Do press ACCEPT here, else you will get an error later when accessing the Woo shop. 
  • Go to Wii Shop. If you already have “My Nintendo” account at Nintendo.com linked to your Wii shop account, Wii will warn you that the link will be broken. Don’t worry about this message. You can set this up again later.
  • Once in, click on the “Add Wii points”. Enter your CC number, name, expiry date and CVV. In the next screen enter any random Brazilian postal code. I used Brazilian Discovery Channel postal code. You can find more of these postal codes in Google.

That’s all, it should work! I bought USD30 worth of Wii points and it worked flawlessly. Once you have the points, you can reset your Wii country to USA (if yours is a US Wii like mine) and reconnect the Wii Shop login with your Nintendo.com login.

What to do with the Wii points?

You can buy Wii Channels, Virtual Console games or WiiWare games online from the Wii shop, using the Wii points. I strongly suggest you buy Wii Internet (Opera) channel. It costs only 500points (USD5.0) and it is worth it. Quickly checking the Orkut, sitting in the couch is bliss, I tell you :)

HowTo: Use Dosbox as a Quick & Dirty disassembler

Dosbox is an open source DOS emulator available for many OS flavors. Dosbox allows you to run any old DOS game, relive some of the golden games of DOS era. It has full support for multiple video standards (VGA, CGA, Tandy,…) and sound cards (Adlib, SB, …). Amazing program! I was even able to bring up Windows 1.0 under that :)

Not many use this powerful emulator as a disassembler though. I have used this technique to disassemble many programs with out resorting to IDA or Sourcer.

More >

Site outage: How to handle?

I recently shifted out of my IIS setup in to a LAMP account. The site’s up time was much better, until yesterday, when suddenly my site was sucked in to the Internet black hole. Repeated help-desk queries pointed me to a routing issue in their end. Finally it got resolved after nearly 7 hours. If you were disappointed (dream on!) to find my site down, I apologize; My site is up again and hopefully will remain so for sometime to come.Due to my site downtime, I got to do other (positive) things.

  • Computer offtime: I didn’t get to check my email (my site’s) for the entire black out. I found it actually refreshing! Believe me, it suddenly makes you feel you have more hours per day than usual.
  • Got to read some books:
    • I got to read the 4 Tamil magazines I bought one month back. No, I am not kidding. I hadn’t even touched those magazines since I bought them last month. I was able to catch up with whats hot (or warm, or cold!) in Gollywood (Tamil film industry) finally.
    • Read couple of chapters from the excellent Advanced Windows Debugging (Addison Wesley). Nothing can beat the smell of paper and the feeling of the book in your hand! Kindle won’t be there in my wishlist ever, I guess.
  • Sleep: I wouldn’t have believed how refreshing a 3 hours nap could be, if I hadn’t experienced it personally. I woke up fully charged, but soon felt deflated when I found out the site was not up yet. Damn, this site is too much interwoven with my day-to-day activities, more than I’d admit actually.
  • TV: Watched Roadies 5.0. Interesting reality show. I wanted Ankita to come in again, but she lost…Hmm, Shambavi being there is also good in a way, as her absence could have reduced the masala in the show.
  • Movies: I watched Fargo. I am a big fan of Coen brothers; I am collecting their films, still 5 more to go :)

Now that the site is up, I am back to my usual blogging self, but I’d surely miss all those other things that I like to do. Computers **do** eat up your time like anything.

Bottomline: Stay away from blogging (and computers) at least a day every week. Enjoy the other good things in life! And, come back to blogging with full josh :)

HowTo: Fix "The response to the metaWeblog.newMediaObject method received from the weblog server was invalid"

Today I got this error message from WLW: “The response to the metaWeblog.newMediaObject method received from the weblog server was invalid“. Why did WLW think the response was “invalid“?? What exactly did it receive from Wordpress??

Luckily, WLW logs a lot more in the background. You can access that log file via Help -> About WLW. Click on the “Show Log Results” link in the dialog box. This will open the log folder.

Mine had this trace dump:

WindowsLiveWriter,21504,Fail,00020,18-Mar-2008 14:00:01.479,"WindowsLive.Writer.Extensibility.BlogClient.BlogClientInvalidServerResponseException: Invalid Server Response - The response to the metaWeblog.newMediaObject method received from the weblog server was invalid:
Invalid response document returned from XmlRpc server
at WindowsLive.Writer.BlogClient.Clients.XmlRpcBlogClient.CallMethod(String methodName, XmlRpcValue[] parameters)
at WindowsLive.Writer.BlogClient.Clients.MetaweblogClient.DoBeforePublishUploadWork(IFileUploadContext uploadContext)
at WindowsLive.Writer.PostEditor.WeblogBlogFileUploader.DoUploadWorkBeforePublish(IFileUploadContext uploadContext)
at WindowsLive.Writer.PostEditor.BlogPostReferenceFixer.FileUploadWorker.DoUploadWork(BlogFileUploader fileUploader)
at WindowsLive.Writer.PostEditor.BlogPostReferenceFixer.LocalFileTransformer.Transform(String reference)
at WindowsLive.Writer.CoreServices.HTML.HtmlReferenceFixer.LocalFileReferenceFixupFilter.FixReferences(String reference)
at WindowsLive.Writer.CoreServices.HTML.HtmlReferenceFixer.OnBeginTag(BeginTag tag)
at WindowsLive.Writer.CoreServices.LightWeightHTMLDocumentIterator.Parse()
at WindowsLive.Writer.CoreServices.HTML.HtmlReferenceFixer.FixLocalFileReferences(String html, ReferenceFixer fixer)
at WindowsLive.Writer.PostEditor.UpdateWeblogAsyncOperation.LocalSupportingFileUploader.UploadFilesBeforePublish()
at WindowsLive.Writer.PostEditor.UpdateWeblogAsyncOperation.DoWork()
at WindowsLive.Writer.CoreServices.AsyncOperation.InternalStart()"," at System.Environment.GetStackTrace(Exception e, Boolean needFileInfo)
at System.Environment.get_StackTrace()
at WindowsLive.Writer.CoreServices.Diagnostics.LogFileTraceListener.Fail(String message)
at System.Diagnostics.TraceInternal.Fail(String message)
at System.Diagnostics.Trace.Fail(String message)
at WindowsLive.Writer.PostEditor.BlogPostEditingManager.UpdateWeblog(Boolean publish)
at WindowsLive.Writer.PostEditor.BlogPostEditingManager.PostToWeblog(Boolean publish)
at WindowsLive.Writer.PostEditor.PostEditorMainControl.commandPostAndPublish_Execute(Object sender, EventArgs e)
at WindowsLive.Writer.ApplicationFramework.Command.RaiseEvent(Object eventKey, EventArgs e)
at WindowsLive.Writer.ApplicationFramework.Command.OnExecute(EventArgs e)
at WindowsLive.Writer.ApplicationFramework.CommandBarButtonLightweightControl.OnMouseUp(MouseEventArgs e)
at WindowsLive.Writer.Controls.LightweightControl.RaiseMouseUp(MouseEventArgs e)
at WindowsLive.Writer.Controls.LightweightControlContainerControl.OnMouseUp(MouseEventArgs e)

Pretty neat stack trace,eh? ;) It clearly shows that DoUploadWork() (Invoked by UpdateWebLog()) method fails for some reason. Armed with this knowledge, I took a look at my post. I had many pictures in that and my WLW was setup to upload pictures through XML RPC. So, obviously that was causing some kind of trouble. I traced down the big picture (size: ~0.7MB) in my post, resized it to 40K and published again. Voila, things worked perfectly!

I googled for the error message, since I wanted to know how other people solved this. Looks like increasing the memory size for PHP in the server side will also help. So, one of the following things should help you to solve this problem:

  1. If you have images embedded that need to be uploaded to the server, make sure they are not big. I don’t have any idea on the *optimal* size. I guess anything less than 100K should be ok.
  2. If still you are getting the same error, try increasing the memory_limit value in php.ini to 12M or 16M. Check this page for info on memory_limit. If you don’t have access to your server, you may have to talk with your host provider.

I believe the first solution will fix this error, in most of the cases. Do let me know in the comments, if you come across any other solutions.

Chess UCI protocol tracer utility

I have this bad habit of starting coding on some application, bringing it to an alpha-ready stage, dropping it and moving on to the next one. Fortunately I don’t do this in my day job, else I’d have got the boot long time back.

Couple of months back, I was working on a chess application. I will not be able to discuss it further here, as I still think that app idea is a good one and is highly marketable. My chess GUI had to support UCI engines. UCI (Universal Chess Interface) is a protocol used by Chess GUI to talk to chess engines (see Figure 1). There are other GUI <-> Engine protocols, like Winboard, but UCI is an effort to create a standard. Since my software had to support all the existing UCI engines, I decided to understand the UCI protocol fully. I looked around for some way to capture the UCI transactions that go in between the GUI and the engine, but couldn’t find any tool to do that. So I wrote my own.

Gui 2 Engine

[Figure - 1]

In the attached file, you will find uciplug.exe, the main UCI tracer application. Tracer is a simple pump, which works as shown in Figure 2:

Gui 2 Tracer 2 Engine

[Figure - 2]

It acts like a network repeater, by passing on everything it gets (either from the engine, or from the GUI) to the corresponding recipient, the only difference being it also logs that message to a file. Multiple instances can be used for running more than one engine simultaneously.

Download

[Download not found]

 

More >

WinTricks: Collection of Windows Tips and Tricks

Wintricks

WinTricks is a database of hundreds of Tips & Tricks, covering Windows 95/98/…/XP/2003. No Vista tricks, but hopefully will be updated in the next release. This is a standalone Windows program (what else?!), in an easily browsable e-book format. Download it from here. This can come very handy.

BTW, does this remind you of the great VDAT, or am I the only fellow feeling nostalgic?

Automatically create Podcasts from your posts – How To?

Talkr
Odiogo

Sign up to Talkr or Odiogo. They offer an unique service: They allow you to automatically convert your text posts in to Audio podcasts and publish the feed. The generated MP3s are stored and served by these sites, so you don’t have to worry about bandwidth and server maintenance.

How does this magic work?

How does it work?

Click here to see the different components at work.

If you have ever tried the Text-to-Speech conversion programs in Windows/Mac, you know what I am talking about and need no explanation, if not read this please :)

Other features:

Talkr has been around since 2005 (AFAIK), Odiogo is relatively a new service. There are even plugins to integrate these services seamlessly with your Wordpress blog: Odiogo plugin for Wordpress & Talkr Plugin for Wordpress. I am sure other blogging platforms can easily be supported with little or no modification.

Personally I won’t go down this path as I prefer to hear my voice in my Podcasts, but this surely is an excellent service for those who don’t want to do everything by their own.

[Update (June 10th, 2007: Fixed all the typos. Thanks Bob for pointing out.]

How to use Windows Vista for more than 30 days?

Windows Vista Ultimate

There is a nice method posted by Ed Bott of Zdnet on extending the Vista’s trial period to 120 days (~4 months). I stumbled on this only recently, while seriously contemplating installing Vista ultimate in a Core2 Duo + 965GF combo. Nice trick, if you need more time to become comfortable with Vista before taking the plunge.