Saturday, September 19, 2009
Enterprise level Windows 7 Gadget
I recently got this email from a user who is trying to build an enterprise level Gadget for Windows 7. If you are in the same boat see if you come across similar problem (my comments below).
"I am working to build a windows 7 gadget for our enterprise. We wanted this gadget to be our desktop source for our application. Below is a brief overview of what we want to achieve:
Here is my comments on the question:
About Your scenario
1. Launch the gadget. Display a login screen in a flyout and try to connect to our server
I would suggest have the login in the settings page (Check sitemeter gadget chapter 9)
2. Once we login, try to display various modules and also favorites across each module. Each module here is an application
If these modules are hosted on a server and have a server page then you can directly login to server page in the iframe and redirect to module page, the cookies are maintained
3. If we select a module, display a flyout screen which displays the transactions within the module
this again can be both iframe based solution (server page embedded in the flyout) or an Ajax API calling the server and returning data in xml/json and parsing and displaying it in the flyout.
4. Once a transaction is selected, open the transaction in a chrome less window
This can be open a new window JavaScript method (note that Gadget supports full javascript as well as VB script)
About the comments:
"I am working to build a windows 7 gadget for our enterprise. We wanted this gadget to be our desktop source for our application. Below is a brief overview of what we want to achieve:
- Launch the gadget. Display a login screen in a flyout and try to connect to our server
- Once we login, try to display various modules and also favorites across each module. Each module here is an application
- If we select a module, display a flyout screen which displays the transactions within the module
- Once a transaction is selected, open the transaction in a chrome less window
- How to initialize a session in a gadget and how to handle sessions? This is critical because we need to find some way of logging into the application and storing the login information
- Does gadgets support handling of cookies?
- Which is the best approach to connect to our server? Based on our research, we found out that using iFrames is a good option; but the problem is they do not support or hold session variables
Here is my comments on the question:
About Your scenario
1. Launch the gadget. Display a login screen in a flyout and try to connect to our server
I would suggest have the login in the settings page (Check sitemeter gadget chapter 9)
2. Once we login, try to display various modules and also favorites across each module. Each module here is an application
If these modules are hosted on a server and have a server page then you can directly login to server page in the iframe and redirect to module page, the cookies are maintained
3. If we select a module, display a flyout screen which displays the transactions within the module
this again can be both iframe based solution (server page embedded in the flyout) or an Ajax API calling the server and returning data in xml/json and parsing and displaying it in the flyout.
4. Once a transaction is selected, open the transaction in a chrome less window
This can be open a new window JavaScript method (note that Gadget supports full javascript as well as VB script)
About the comments:
- In a Gadget the best way to maintain session is by using Gadget settings. You can easiliy read/write to the gadget settings which will persist. This can be used for both login information and user choice.
- To connect a server the gadget allows Ajax to connect to a server and retrieve data in the form of Text, HTML, XML, XHTML, XML RPC, JSON, and SOAP, any of the option can be used with Ajax with cross domain access from the gadget. (check Blog gadget example chapter 5-8)
- You can always use Iframe inside the flyout window if you need special server pages/ graphs (see chapter 9)
If you come across any problem feel free to email me.
Labels: Book, gadgets, user query, vista
Thursday, February 19, 2009
Auto Update for Vista Gadget
I got this question from a Gadget developer!
"We have an auto-upgrade mechanism in place which gets notified if a new version is available thanks to a Web service.
Clearly this will alert users to the presence of a new version, and allow them to download it. However, once downloaded we’d like the old version to be replaced by the new one. Right now we are finding that the new one appears side-by-side with the old one, and the user has to remove it manually.
Do you have any ideas about how to prevent this?"
If you have a similar concern, here is a detail on what needs to be in the new version and what happens when the user download a new version of your existing Gadget.
To replace the existing gadget with a new version the following needs to be there:
"We have an auto-upgrade mechanism in place which gets notified if a new version is available thanks to a Web service.
Clearly this will alert users to the presence of a new version, and allow them to download it. However, once downloaded we’d like the old version to be replaced by the new one. Right now we are finding that the new one appears side-by-side with the old one, and the user has to remove it manually.
Do you have any ideas about how to prevent this?"
If you have a similar concern, here is a detail on what needs to be in the new version and what happens when the user download a new version of your existing Gadget.
To replace the existing gadget with a new version the following needs to be there:
- Name of the Gadget should be same.
- Gadget configuration file need to be same except for the version number which needs to be greater.
- The current gadget must be closed from the sidebar.
- When an upgrade is available. Give an Alert message that: a> User need to download the gadget in there desktop
- Instead of giving your user a URL of the gadget, redirect them to the upgrade page where you can put step-by-step instructions.
- The best way of course is to Avoid an Upgrade all together, in my experience very few people go for an upgrade if existing gadget is working.
b> They need to close the existing gadget. before installing the new version
Labels: gadget, gadgetbook, user query, vista
Monday, February 2, 2009
ComicStrip Vista Sidebar Gadget
Download
One of the most popular demo Gadget in the book is ComicStrip Gadget. I keep getting emails from users all over the world about how to customize it. Note that this gadget is meant for education purpose only. Here is one of the conversation.

If you are also interested to customize the Gadget Read On.
The Problem from Gadget developer
First of all let me thank you the very useful ComicStrip gadget. I really enjoy using it, However I have slight problems with it.These are:
Could you please at least give me hints how to resolve this problem or could you please fix it? I really enjoy using your superb gadget and I definitely do not want to switch to an other feed reader sw because the Sidebar is the most comfortable solution AND simply there is no alternative for your gadget, it is one of a kind...
- When I restart the PC, the gadget reverts all settings to default, in my case, I only need Dilbert, Garfield and Calvin & Hobbes strips but when my PC restarts the gadget always displays all the default strips like Maxine, Chicken and so on. I cannot figure out what is the problem, I am admin on my PC and I also have full control rights for the Sidebar directory. I also checked the settings.ini for gadgets, it has the right settings for ComicStrip. This also happens sometimes when I just hibernate the PC.
- The other thing: on the settings page Calvin and Chicken are mixed up, so when I select Calvin, I get Chicken strips and vice versa.
Could you please at least give me hints how to resolve this problem or could you please fix it? I really enjoy using your superb gadget and I definitely do not want to switch to an other feed reader sw because the Sidebar is the most comfortable solution AND simply there is no alternative for your gadget, it is one of a kind...
The Solution
The session in sidebar vista gadget is not saved when the computer restarts, so the only way to make the settings persist is set the defaults in the code. ComicStrip gadget is based on MyBlog Gadget which is the core focus of Chapter 4 to Chapter 8 of Creating Vista Gadgets .If you have the book, check the portion where we initialize and set the defaults for the Gadget.
Here are the steps to change the defaults:
1. Open the following location in Windows Explorer %userprofile%\AppData\Local\Microsoft\Windows Sidebar\Gadgets\ComicStrip.gadget\code
2. Open the Gadget.js file in notepad.
3. Look for the function SetDefaults()
you will see the following code
function SetDefaults()
{
System.Gadget.Settings.write("Dilbert",true );
URLFeedsActive[0] = 1;
System.Gadget.Settings.write("Garfield",true );
URLFeedsActive[1] = 1;
System.Gadget.Settings.write("Chicken",true );
URLFeedsActive[2] = 1;
URLFeedsActive[3] = 0;
URLFeedsActive[4] = 0;
URLFeedsActive[5] = 0;
System.Gadget.Settings.write("Calvin",true );
URLFeedsActive[6] = 1;
System.Gadget.Settings.write("Maxine",true );
URLFeedsActive[7] = 1;
URLFeedsActive[8] = 0;
URLFeedsActive[9] = 0;
System.Gadget.Settings.write("Peanuts",true );
URLFeedsActive[10] = 1;
System.Gadget.Settings.write("BobBetty",true );
URLFeedsActive[11] = 1;
}
SO FOR 11 COMIC STRIPS YOU HAVE 11 SETTINGS
if you want only dilbert , garfield and calvin your function code should look like the following
function SetDefaults()
{
System.Gadget.Settings.write("Dilbert",true );
URLFeedsActive[0] = 1;
System.Gadget.Settings.write("Garfield",true );
URLFeedsActive[1] = 1;
URLFeedsActive[2] = 0;
URLFeedsActive[3] = 0;
URLFeedsActive[4] = 0;
URLFeedsActive[5] = 0;
System.Gadget.Settings.write("Calvin",true );
URLFeedsActive[6] = 1;
URLFeedsActive[7] = 0;
URLFeedsActive[8] = 0;
URLFeedsActive[9] = 0;
URLFeedsActive[10] = 0;
URLFeedsActive[11] = 0;
}
4. Make the change in SetDefault function and save Gadget.js file.
5. Close the gadget from sidebar.
6. Go to gadget picker window and add the gadget again.
Hope this helps.
Here are the steps to change the defaults:
1. Open the following location in Windows Explorer %userprofile%\AppData\Local\Microsoft\Windows Sidebar\Gadgets\ComicStrip.gadget\code
2. Open the Gadget.js file in notepad.
3. Look for the function SetDefaults()
you will see the following code
function SetDefaults()
{
System.Gadget.Settings.write("Dilbert",true );
URLFeedsActive[0] = 1;
System.Gadget.Settings.write("Garfield",true );
URLFeedsActive[1] = 1;
System.Gadget.Settings.write("Chicken",true );
URLFeedsActive[2] = 1;
URLFeedsActive[3] = 0;
URLFeedsActive[4] = 0;
URLFeedsActive[5] = 0;
System.Gadget.Settings.write("Calvin",true );
URLFeedsActive[6] = 1;
System.Gadget.Settings.write("Maxine",true );
URLFeedsActive[7] = 1;
URLFeedsActive[8] = 0;
URLFeedsActive[9] = 0;
System.Gadget.Settings.write("Peanuts",true );
URLFeedsActive[10] = 1;
System.Gadget.Settings.write("BobBetty",true );
URLFeedsActive[11] = 1;
}
SO FOR 11 COMIC STRIPS YOU HAVE 11 SETTINGS
if you want only dilbert , garfield and calvin your function code should look like the following
function SetDefaults()
{
System.Gadget.Settings.write("Dilbert",true );
URLFeedsActive[0] = 1;
System.Gadget.Settings.write("Garfield",true );
URLFeedsActive[1] = 1;
URLFeedsActive[2] = 0;
URLFeedsActive[3] = 0;
URLFeedsActive[4] = 0;
URLFeedsActive[5] = 0;
System.Gadget.Settings.write("Calvin",true );
URLFeedsActive[6] = 1;
URLFeedsActive[7] = 0;
URLFeedsActive[8] = 0;
URLFeedsActive[9] = 0;
URLFeedsActive[10] = 0;
URLFeedsActive[11] = 0;
}
4. Make the change in SetDefault function and save Gadget.js file.
5. Close the gadget from sidebar.
6. Go to gadget picker window and add the gadget again.
Hope this helps.
Labels: Book, gadget, gadgetbook, user query, vista
Thursday, January 29, 2009
Visual Studio Template for Sidebar Gadget
The Gadget books comes with a Visual Studio Temopate with all the reusable functionalities. To create a Gadget all you need to do is Install the tempalte and Create New Project as you do in Visual Studio and Select Innovate.Gadget from your templates
The Problem (user email)
I would like some clarification on the Gadget Template code so I can make good use of the template if you please.
So if you are also trying to use the template you know (now) what kind of issues are there. Take care.
Here is one of the user email I recieved with a query about installing the template. So if you are having similar issues read on.
I would like some clarification on the Gadget Template code so I can make good use of the template if you please.
The information on installing this has been a bit confusing. Should I unzip the files and put them in the C:\Users\User_Pin\Documents\Visual Studio 2005\Templates\Project Templates folder, or should I place them under the same directory path’s Visual Web Developer folder?
I have not had any luck with VS 2005 recognizing this template. Thanks so much for any info…
The Solution
For the installing the Visual Studio template, all you need to do is put the gadgetTemplate.zip in the following folder 'My Documents\Visual Studio 2005\Templates\ProjectTemplates' and it should work. Here is the Screen-shot

Once you put the zip file there , Open Visual Studio 2005 and click on File -> New Website and you will see the template in My Templates section. See the screen shot below

The User Reply
The Solution

Once you put the zip file there , Open Visual Studio 2005 and click on File -> New Website and you will see the template in My Templates section. See the screen shot below

The User Reply
I didn’t notice that the language, by default on the “New Web Site” came up “Visual Basic”. Once I set it to “Visual C#”, the template appears. That’s funny since. I don’t even have Visual Basic installed, but all is well now. Thanks for the help
So if you are also trying to use the template you know (now) what kind of issues are there. Take care.
Labels: gadget, Sidebar, user query, vista
Friday, January 2, 2009
SOAP based Web Service in Vista Sidebar Gadget
I got the following email the other day from a fellow gadget developer, regarding a problem with a Gadget which access a SOAP based Web Service.
"I bought your book 'Creating Vista Gadgets' and congratulations... It’s a very good book since it gives both technical details and a broader view of the subjects on other areas which engineers usually forget about.
My aim is very simple… I wanted to migrate a small windows application to the vista gadget platform. It’s an astrological quality time meter using the Webservice http://webservices.plaintime.com/Service.asmx?wsdl. Since my knowledge of XML and Javascript is more google based I’m having problems understanding how to code it. Any help is welcome.
Although I could not help him directly, except for telling him that,
"I bought your book 'Creating Vista Gadgets' and congratulations... It’s a very good book since it gives both technical details and a broader view of the subjects on other areas which engineers usually forget about.
My aim is very simple… I wanted to migrate a small windows application to the vista gadget platform. It’s an astrological quality time meter using the Webservice http://webservices.plaintime.com/Service.asmx?wsdl. Since my knowledge of XML and Javascript is more google based I’m having problems understanding how to code it. Any help is welcome.
Although I could not help him directly, except for telling him that,
- A SOAP based Web Service can be called inside a gadget similar to an rss feed. which is thoroughly covered in Chapter 5 - Chapter 8. Blog Gadget covers this topic in details. A webservice also return an XML file which then will be required to parse.
- Sending notes to refer Chapter 9, Information Gadget which uses a Text based Web Service for a Sidebar Gadget, to get some insight and
- A link to an article which elaborates a usage of webservice http://www.codeproject.com/KB/gadgets/DynamicsCRMGadget.aspx.
You wll be glad to know that he was finally able to use the Gadget Template in the book for the webservice and with his permission I am sharing his gadget with all of you. The gadget download page: http://www.maladilusoes.com/DLTL. Here is screenshot of the Gadget: Ontime – Astrology Time Management.

So, what kind of Vista Gadget are you creating ?

So, what kind of Vista Gadget are you creating ?
Labels: create, gadgets, Sidebar, vista
Thursday, August 28, 2008
SiteMeter Vista Gadget
I was getting a lot of emails regarding the Sitemeter Windows Vista Gadget, demonstrated in the book (Chapter 9). I wanted to clarify that there are two versions of the Gadget.
If you have a PUBLIC account at Sitemeter.com you can download and use the Live version of the Gadget as shown below

Here are the Steps to add a new website in the Gadget
Done. let me know if you have any questions
- SiterMeter Live Version for public use with multiple websites. This is also announced at SiteMeter website. The latest gadget can be downloaded here
- Fixed version available in the book. Can be found at the download section of www.innovatewithgadgets.com
If you have a PUBLIC account at Sitemeter.com you can download and use the Live version of the Gadget as shown below

Here are the Steps to add a new website in the Gadget
- Get the Sitemeter Code
- Open Settings Page.
- Add a Title for your website for example For http://www.widgets-gadgets.com you can have Web Widgets. This is a friendly title to distinguish between multiple websites.
- Add the 6 digit code , This is NOT the password for the SiteMeter For example for www.widgets-gadgets.com It is s41widgets
- Once added, go back to the gadget and when you put your mouse on Title of the Gadget, you will be able to see the Chevrons (forward/backward arrows) Click on the arrow to go to statistics for previous/next website.


Done. let me know if you have any questions
Labels: gadget, Sidebar, vista
Saturday, August 2, 2008
Amazing Reviews for Creating Vista Gadgets
The book Creating Vista Gadgets got some great reviews at Amazon.com, but Amazon's inhouse maintenance (!) has caused disapearance of all of them. I have recieved an email from Amazon.com that they are working on the issue, hopefully they will apear soon.
If you are looking for what customers are saying about the book here is the list of reviews along with their Amazon link.
If you are looking for what customers are saying about the book here is the list of reviews along with their Amazon link.
- 3 of 3 people found the following review helpful:
Excellent rundown of gadget development, June 2, 2008
By B. Teutsch (Microsoft)
This book is a wonderful introduction to the entire process of creating a gadget for the Windows Vista Sidebar. I was a program manager for the Sidebar project, and the information Rajesh sets out is excellent. I would caution readers that this book introduces gadget development from the perspective of someone who is at least somewhat familiar with HTML development practices. As long as you're starting from that baseline, you'll find gadget development using this book to be both simple and comprehensive!
http://www.amazon.com/review/RKU12HI5BIO7F - 1 of 1 people found the following review helpful:
Great book!!! Even for starters with no background. 2 Thumbs up, June 13, 2008
By Anand Chauhan "Andy Chauhan"
I am a professor teaching Computer Science courses at a University and have reviewed many books. This falls into top 1% of the books that I have reviewed over many years of my teaching. The book presents a great content and a easy to understand style even for starters in this area. I am generally into hard core Linux technologies and have basic understand of Windows systems. However, this book provides sufficient conceptual background to start programming rapidly. The code examples are great to understand the basics of Gadgets. With the book in hand the user can safely assume an easy learning curve. Its a power packed, programing and easy approach to learning Windows Gadgets, and to my understand is the best book it its class. Highly recommended.
http://www.amazon.com/review/RE304VUE23R99 - 4 of 4 people found the following review helpful:
Comprehensive book on Vista Sidebar Gadgets, May 30, 2008
By Rama K. Vavilala
If you are intending to develop a Vista Sidebar gadget, this is the only book you will ever need. The author goes beyond the JavaScript coding of a sidebar gadget and covers good design practices, architecture and deployment of gadgets. There is even a chapter on business model for sidebar gadgets. The writing style is simple and easy to follow.
Another nice thing about the book are the examples. Not only do the examples illustrate different types of gadgets, but they also illustrate how different technologies such as ActiveX and SilverLight can be employed for gadget development.
http://www.amazon.com/review/R8CGLW2L948SO - 4 of 4 people found the following review helpful:
Everything you need, May 27, 2008
By M. Schmidt
If you're new to Vista gadget development or even experienced and need a little creativity boost, this is the book to get. Not only does it cover basic gadget development, it'll show you how to mix and match different technologies when creating your gadget. ActiveX, silverlight, .NET, Ajax. It has it all. Some of the gadgets included in the book are worth the price alone.
http://www.amazon.com/review/R1PTX95J2NZM7M - 5 of 5 people found the following review helpful:
Awesome book about gadgets creation!, May 21, 2008
By Sofia Ipatieva "Web designer, BS."
I've found this book occasionally, but after I've finished it I fall in love with gadgets and widgets. I've read it like a thriller. Thanks to author who guided me in exciting and interesting journey through the magic world of the gadgets. Great book, easy to read and understand, quite useful and it's gave me a lot of new ideas and professional tools. I would recommend this book to all my friends-web designers. Sofia I.
http://www.amazon.com/review/R3C0V3ADXKOA9N - 1 of 1 people found the following review helpful:
Great Book, In-depth Analysis and reading material., June 29, 2008
By Ajay Prasad
This is awesome book with in-depth analysis and great reading material. User friendly explanation that is even good for the starters. The book contains many topics that give detail orientation of learning and implementation. This book has very comprehensive details that explain everything and require no further explanation. 200% worth reading!!!
http://www.amazon.com/review/R2565F3000FLDY - 1 of 1 people found the following review helpful:
Your guide to creating Gadgets, June 23, 2008
This book is an awesome guide to creating Vista Gadgets even for novice developers. It provides all the required knowledge to play with and create your own for a multitude of utilities.
http://www.amazon.com/review/R16X3CT9KRS7PF - 1 of 1 people found the following review helpful:
Not just another boring Technical book...... This one is FUN!, June 23, 2008
By Richard T. Kingslan "Consultant for a Major Software Company"
Typically, technical books have a problem of being dry. They lack style, any sense of enjoyment (seriously - you don't read one to stay awake at night...) and are typically read because you either have a problem with the subject at hand, or you've been tossed under the bus by your boss - who promised you could be an expert in three days. And, he told you Monday was the deadline - and it's Friday afternoon.
Now and then, you come across a book that IS fun, and gives you the opportunity to learn something that can be expanded greatly. Such a book is Rajesh's book on Vista Gadgets. With the technology based in the use of JavaScript, HTML, CSS and Ajax, the skills that you can glean from this book can take you in many directions. The key, however, is learning. And learning something is much more enjoyable and fun when you can see the outcome - and it does something that is, well - cool.
Gadgets are designed to be little tools to do something useful. They are a way to automate a daily task. To keep an eye on specific processes. A way to while the time away playing Suduko when, of course, you really should be working. Plus, they can be very attractive and add another element to the theme of a given desktop, much as the wallpaper and the colors of the windows create the theme.
Plus, as mentioned - gadgets can be considered a beginners introduction to Web Parts - those pieces of code that do tasks on web servers and on client browsers - the up and coming Web 2.0. The technology is the same, the scope and the interfaces into the larger project are different.
It would have been a much more average book if Rajesh had taken a number of projects and walked you through the code on how to develop these - all with code samples, snips of pictures, graphic elements, etc. However, he goes the extra mile by not stopping at the 'Let's build an RSS feed gadget...' (Make no mistake - you only need one of those, and all in all - they're pretty simple...) Rajesh takes it the extra mile by spending time on Patterns, project thoughts, bringing together all of the disparate elements. Call it, if you will, Designing Gadgets. Creating a gadget is not overly hard. Designing one is a bit more of a challenge. Rajesh takes you on the thoughts that need to be sorted out as you go through that process. The upside? You don't stop when you get done with the book. You really DO have all the tools necessary to design and develop your own tools, widgets, automatons and sidebar 'bots'.
Remember, though - these are supposed to be fun! If you find yourself having too much fun, that C++ book is just to your left. Read it for a while. Come back to this book and you'll see that Rajesh's book is MUCH MORE exciting!
http://www.amazon.com/review/R1JUFCTRG81OA9
Excellent source for Gadget development, June 20, 2008
By Abhijit Jadhav
This book is an excellent source for creating gadgets for windows vista.I am familiar with HTML development projects and this book provided me with comprehensive details with easy to understand language. I also liked the way Rajesh has illustrated different gadgets in his examples.
http://www.amazon.com/review/R2NPUD7C0POT0L- 1 of 1 people found the following review helpful:
Amazing Book and the stuff that we need to build gadgets is in here, June 11, 2008
By M. Kulkarni "DarthRader"
Book is an excellent guide and must to have if you are looking to create gadgets. Best thing about this book is its straight forward approach for serious application developer.The advanced samples are very handy when it comes to build gadgets real-time. i have already started using tips to build my own gadgets. MUST READ FOR chapter 3, 8,9,10,11,12 to get into gadgets before its too late. Do not miss tips section very handy and useful. MAY THE FORCE BE WITH YOU
http://www.amazon.com/review/R1FE2TOS2D1YEP - 2 of 2 people found the following review helpful:
Anupama Kunchakara, Software Application Engineer, June 7, 2008
By Anupama Kunchakara
An Excellent book for Gadgets development. There are lot of examples which really are useful to understand the concepts.
http://www.amazon.com/review/R2ZCD2PVJERHFD - 3 of 3 people found the following review helpful:
Get deep into Vista Gadgets technology, May 31, 2008
By Luigi Bertoneri
I'm a developer with more than 10 years of experience. I like the new technology, especially of Windows Vista, Windows Mobile and Windows Embedded. I have created a few gadgets without this book, since the Vista Gadget SDK was a beta. I found myself running into more bugs and problems. I think this book is a great learning tool and an excellent guide, it reports more material gleaned from a few of the tips.
The thing that many books have in common is that they are boring. Well, this book is different!
The author, Rajesh Lal, has presented his book, explaining complex matters in a new interesting way, which makes reading his book enjoyable as well as useful. It keeps the theory down to what you need to know to get the job done, without a load of waffle. The author's approach to teaching, is like a friend telling a story. Creating Vista Gadgets will throw a few challenging scenarios at you, you'll go from knowing nothing about gadget to having a strong grasp on the concept.
Programming delves into more depth in many areas; in HTML, CSS, JavaScript, RSS, Ajax and object-oriented programming.
The book is very well structured in a logical development with 4 sections and all concepts are described with illustrations.
In the first section Rajesh Lal talks about the history of gadgets and covers all the basics. Afterwards, he goes well in depth with more Vista Gadget samples.
You can find here all the basic steps required to begin to think your gadget. He provides an overview about using the manifest, the event, how to use resources and the APIs available. The 3rd chapter of the first section, is the chapter I like most, all you need for a killer gadget, the user interface. Around internet you can find a lot of gadgets but only a handful are very useful and cool. Here you can find a good guideline on how to think like a user, the choice to expose, how to do a quick access, the gadget's limits, the refresh, the style and so on. The last chapter of the first section talks about the way to use it in your business, needed for readers more than a noob - a real pearl.
It's indeed useful to understand how to use you gadget or what to deploy with a deep view around you, it helps you with a lot of case studies with benefits.
The other three sections are for real developers, explaining the tool you need such as Visual Studio and a step by step procedure to set up the project with some tips. Furthermore, you can find a deeper analysis of topics mentioned in the previous section. Here you can learn using a manifest, settings, the presentation and the DOM and so on. After the first samples and the first smell of the power you have, the author introduces the event and more useful info with some cool samples.
The 7th chapter is the best of the second section, great must read. I will not explain any further, enjoy reading it.
The book explains then how to debug a gadget, the debugging tools and how to use them and deploy with CAB or MSI. Section 9 is the last of this chapter, introducing AJAX and providing a lot of information on how to use it for deploying a gadget retrieving information from part of a site and manipulate it to a different view. It covers a lot of the design concept and usability.
In the last Chapter of the section 3 the author met his goals. He explains how to develop gadgets in different ways, thus adding renewed power to gadget: Silverlight. I have found it very complete, it's effective and useful. This chapter also have a lot of references and the author suggest areas for further research.
The 4th section, closes the book with a great shot. In "Tips and tricks" You can find some useful hints like avoiding vista security or how to protect your code. In "Extra" the author gives the readers a gadget template for Visual Studio, yes you have read well, a template with three cool gadgets.
My final assessment: This is one of my absolute favorite books on programming, it's just a lot of fun. This is the first book that would really set you apart. It's very useful, with lots samples with code, it really helps you to improve your skills, thinking like an analyst-programmer. Moreover, it helps developers using some language and writing better code. After reading it, you'll have an arsenal of tools to throw at any programming problems. Getting to work under Vista Gadget with no easy task. The target audience is too widely spread, developers (green and old), architects, business analysts, so this book is great to have in the office or in your bookshelf at home. This book is highly recommended.
This book also serves as an excellent reference. If you have a question about something you can contact the author for reference agreement here: http://www.amazon.com/gp/pdp/profile/A2OJOGNTJEY2O9.
I hope this is a comprehensive overview about this book, Creating Vista Gadgets by Rajesh Lal. If you understand a bit of what this book is... order now or buy it immediately, It will repay its cost within hours through saving your wasted time.
http://www.amazon.com/review/R3UBNFOBLSTXLA - 1 of 1 people found the following review helpful:
Gadgets development is interesting now!!, June 23, 2008
By manish saraf
I am beginner to Vista gadgets and I found the book to be explanatory with lots of examples. The book explains design, architecture, deployment etc very efficiently. Gadgets development is very interesting for me now. I would definately recommend this book to my web designer friends. http://www.amazon.com/review/R31QR3B2U52TX6
Labels: Amazon, Book, gadget, Sidebar, vista
Sunday, May 11, 2008
Creating Vista Gadget using HTML, CSS, & JavaScript
If you ever wanted a book on Creating Vista Gadgets, with lots of useful samples. Here is a book on the topic. Click here to buy the book.

releasing on "May 19, 2008"
Table of Content

Advanced Gadgets included in the book
This book has advanced samples using ActiveX (COM), Ajax, & Microsoft Silverlight. This guide will walk you through the process of designing and developing of each of them.

(a) Build a Blog Gadget using RSS /Atom Feed
MyBlog Gadget will walk you through a complete gadget development lifecycle using an online RSS/Atom Feed. We see the design patterns and standard practices, common assumptions and then add advanced features to the gadget with multiple feeds and advance page and record management.
(b) Create an Information Gadget with Ajax
Site Statistics Gadget uses Ajax and a Web API provided by Sitemeter.com to create a unique Information Gadget which mimics the online free service provided by Sitemeter.com. It shows how to do screen scraping and load part of a web page in the Flyout window.
(c) Develop a Utility Gadget using ActiveX COM technology
Most Recent Used (MRU).Net Projects is a innovative gadget which lists Most Recent Used projects in .Net. It shows projects for Visual Studio 2003, Visual Studio 2005 and Visual Studio 2008. The gadget also shows how to read and enumerate registry data. The gadget also explains how to use advanced features of Windows Power Shell and Windows Management Instrumentation (WMI) in a sidebar Gadget.
(d) Incorporate Internet Radio and YouTube Video in Fun Gadgets
Learn to create a Radio Gadget based on an online streaming server and Video Gadget using a YouTube Video feed. The gadgets also show how to incorporate windows Media Player as well as Flash Media Player inside a Sidebar gadget. See how to use XMLDOM to read online feed instead of Ajax approach.
(e) Create Cutting edge Sidebar gadget using Microsoft Silverlight
Silverlight World Clock Gadget shows time for multiple cities of the world. It also gives you an insider view of XAML and Microsoft Silverlight. Know the programming model of Silverlight in gadget development.
(f) Developing a Sidebar Gadget using Microsoft Popfly.NET
Website Comparison Gadget uses Microsoft Popfly.net to create an innovative gadget which compares the popularity of different websites with the help of services provided by Live Search and Microsoft Bar graph. It shows how to create the mashups in minutes and port it to Sidebar platform.
I would like to hear any questions/ comments/ suggestions, you may have !

- Creating Vista Gadgets: Using HTML, CSS and JavaScript with Examples in RSS, Ajax, ActiveX (COM) and Silverlight (Buy from Amazon)
releasing on "May 19, 2008"
Table of Content

Advanced Gadgets included in the book
This book has advanced samples using ActiveX (COM), Ajax, & Microsoft Silverlight. This guide will walk you through the process of designing and developing of each of them.
(a) Build a Blog Gadget using RSS /Atom Feed
MyBlog Gadget will walk you through a complete gadget development lifecycle using an online RSS/Atom Feed. We see the design patterns and standard practices, common assumptions and then add advanced features to the gadget with multiple feeds and advance page and record management.
(b) Create an Information Gadget with Ajax
Site Statistics Gadget uses Ajax and a Web API provided by Sitemeter.com to create a unique Information Gadget which mimics the online free service provided by Sitemeter.com. It shows how to do screen scraping and load part of a web page in the Flyout window.
(c) Develop a Utility Gadget using ActiveX COM technology
Most Recent Used (MRU).Net Projects is a innovative gadget which lists Most Recent Used projects in .Net. It shows projects for Visual Studio 2003, Visual Studio 2005 and Visual Studio 2008. The gadget also shows how to read and enumerate registry data. The gadget also explains how to use advanced features of Windows Power Shell and Windows Management Instrumentation (WMI) in a sidebar Gadget.
(d) Incorporate Internet Radio and YouTube Video in Fun Gadgets
Learn to create a Radio Gadget based on an online streaming server and Video Gadget using a YouTube Video feed. The gadgets also show how to incorporate windows Media Player as well as Flash Media Player inside a Sidebar gadget. See how to use XMLDOM to read online feed instead of Ajax approach.
(e) Create Cutting edge Sidebar gadget using Microsoft Silverlight
Silverlight World Clock Gadget shows time for multiple cities of the world. It also gives you an insider view of XAML and Microsoft Silverlight. Know the programming model of Silverlight in gadget development.
(f) Developing a Sidebar Gadget using Microsoft Popfly.NET
Website Comparison Gadget uses Microsoft Popfly.net to create an innovative gadget which compares the popularity of different websites with the help of services provided by Live Search and Microsoft Bar graph. It shows how to create the mashups in minutes and port it to Sidebar platform.
I would like to hear any questions/ comments/ suggestions, you may have !

