Wubi
October 30, 2009 by Windows7info
Filed under Downloads
10/30/09 - Try Ubuntu on your Windows machine without partitioning your hard drive or creating a boot CD
Ubuntu
October 30, 2009 by Windows7info
Filed under Downloads
10/30/09 - Run an full-powered operating system that’s based on community development.
ZSBackup
October 30, 2009 by Windows7info
Filed under Downloads
10/30/09 - Solve all you backup-tasks.
Microsoft Just Made the Web’s Best Video
October 30, 2009 by
Filed under News
Remember this hilarious video called “A Brief History of the Web” I blogged about in March? The video has won the Best Online Video (standalone) at the OMMA Awards. Very cool! You can see the full list of winners here. If you haven’t seen the “History of the Web” video already, you should
Awesome Windows 7 Resources
October 30, 2009 by
Filed under News
With Windows 7 now available worldwide, I wanted to share some resources available to help IT Pros become more proficient with Windows 7 and consumers more savvy about new support resources for Windows 7.
Microsoft Learning has developed a wide range of training and resources for IT Pros that address the benefits and key technical aspects of Windows 7. With these resources, IT Pros can prepare for deployments and become Windows 7 experts within in their organization. These resources include:
- The Windows 7 Learning site with information, tools and resources to help people get up and running on Windows 7, such as Learning Snacks, Learning Plans, certifications currently available on Windows 7, and resources for classroom and online training.
- The Career Campaign site that provides guidance, career paths, special offers and certifications for common IT job roles. Through Learning Plans and special offers, IT pros can train to get certified on Windows Server, Windows client technologies, Microsoft Exchange Server and Microsoft SQL Server. Individuals can chart their course from their current skill level to their desired job role and skill level, from beginner through experts, with clear guidance on classes, upgrades and newest releases, along with special offers that will help individuals meet their career goals.
- Special offers from Microsoft make it easier for individuals who are getting started in their careers, changing job roles or advancing within their organizations get the training they need. This includes limited-time offers and discounts on training and certification, making it easier to embark on a career course, such as: discounts of up to 25% on certification exams, Career Packages that include classroom training, a Certification exam and a copy of Windows 7 Ultimate (available through select Certified Partners for Learning Solutions) and discounts on e-Learning collections for self-paced study.
- Springboard Series on TechNet is a GREAT place for IT Pros to Discover & Explore, Pilot & Deploy and Manage Windows 7. Be sure to keep your eyes on the Springboard Series Blog too.
Since many IT Pros serve double-duty as the IT expert for their friends and family, there are support tools available in and around Windows 7 that make it easier for them to help consumers address their issues. Detailed on Microsoft’s PressPass site, these resources provide end-to-end Windows 7 support that includes built-in self-healing and support tools, easy-to-use automated and scripted solutions and customer support through new social media forums, including:
- Windows Update: Automatically updates software to help prevent problems.
- Windows Action Center: includes more than 20 automated troubleshooters that fix more than 150 common problems.
- Scripted diagnostics and solutions: through Fix IT solve common software problems with the click of a button.
- Online Support: through Microsoft Answers provides peer to peer help, guidance from customer support experts and Microsoft Most Valuable Professionals (MVPs).
- In the moment help: through tweets to the @MicrosoftHelps Twitter account.
- Easier, more intuitive online resources such as the Windows Help and “How To” center and the solution centers available on support.microsoft.com .
For more information about the value of training and certification, and to keep up with new Windows 7 training resources, visit Born to Learn; and for more information about the consumer support resources available in Windows 7, please visit support.microsoft.com.
Special thanks to the folks at Microsoft Learning and Microsoft Customer Service and Support (CSS) for reaching out to me and compiling these awesome resources to share with you today.
Get to know the Windows Home Server Team: Video interview with Jonas Svensson, Community Program Manager
October 29, 2009 by
Filed under News
Many of the products that you use everyday are faceless and may be hard to identify with. We thought it would be interesting to put a face behind Windows Home Server and give you a chance meet some of the people that work on Windows Home Server day in and day out. I will be introducing you to different areas of the team, but we will start with our Community Program Manager, Jonas Svensson.
Jonas is someone that you may have already met. As our Community Program Manager, he participates in multiple events event throughout the year that you have possibly attended including SMB Nation and PDC. In this interview, you will find out how he contributes to the team and how Windows Home Server is a part of his daily life. Enjoy!
Windows 7 Early Adopter Panel at the Gartner Symposium
October 29, 2009 by
Filed under News
This post was written by Devrim Iyigun, a Senior Product Manager here in Redmond.
I had a chance to attend Gartner Symposium/ITxpo 2009 last week in Orlando, Florida. For those of you who are at the early stages of deploying Windows 7, looking for some insider information and did not have the opportunity to attend the conference, I have a great resource I would love to share with you.
Gartner Symposium/ITxpo 2009 is one of industry’s largest and most important annual gathering of CIOs and their senior IT leaders. This year’s event focused on how business technology can help customers return to growth by balancing cost optimization and risk mitigation. Microsoft was helping customers to understand how they can realize the benefits of Windows 7. With the general availability date for Windows 7 being October 22nd, this year’s event was quite special for the Microsoft team.
One of the Microsoft –sponsored sessions that took place is Windows 7 Early Adopter Customer Panel. In this highly visible discussion, featured Gartner Research VP & Distinguished Analyst Michael Silver facilitated the panel around Windows 7 planning, deployment and customer experience with Windows 7 Early Adopter Customers: ADP, BMW, Energizer and Pella.
The panel includes discussions about topics of importance for enterprises considering the move to Windows 7 such as application compatibility and deployment goals. ADP, BMW, Energizer and Pella share their perspective on business drivers to adopt Windows 7 and the benefits they expect to achieve with deploying Windows 7. These companies also share their deployment experience and recommendations for companies new to Windows 7 deployment.
This is your chance to get valuable insider information from Microsoft Customer industry leads. Please click here for a replay of this webcast.
For more enterprise company case studies, information on Windows 7 cost savings or our webcast series just visit our Windows Enterprise site.
For all of your Windows 7 IT pro information, visit the Springboard Series on TechNet. The destination for Windows desktop IT professionals to Discover & Explore, Pilot & Deploy and Manage Windows 7.
Widget Anatomy – Touch and D-Pad inputs, oh joy!
October 28, 2009 by
Filed under News
This is fifth and final part of my Widget Anatomy series that described the ins and outs of the Widget Framework that shipped with windows mobile 6.5. In this installment we will discuss the different ways a Widget can receive inputs from the user and how best respond to them.
First the easy one: Touch
Touch is the primary input for all our professional devices and it looks like they will be a significant percentage of our device offering. Handling this is fairly easy since the browser engine translate the touch event into a mouse click which can be handled by using the onclick event handler as shown in the following example:
1: <html>
2: <head>
3: <script type="text/javascript" src="js/ImageSearch.js"></script>
4: </head>
5: <body>
6: <div id="SearchBox">
7: <input id="SearchQuery"/>
8: <img src="images/search.png" class="searchIcon" onclick="doSearch();" />
9: </div>
10: </body>
11: </html>
It is important to note that, since there is no “mouse” for widgets most of the other mouse related events like onmouseover, onmousemove, etc will not be triggered in a reliable enough way to use them.
Now the hard one: The Directional-Pad
I been making special emphasis to the fact that Widgets work seamless across all Windows Phones so, we need to ensure that the can be used correctly when the user interacts with it using the directional path.
It is important to note that, unlike IE6, a The widget framework will respond to a D-Pad input event by moving the focus to the closed actionable element in the direction of the user click. This behavior is similar to the old pocketIE and among friends we call it “Link to Link navigation”.
An actionable element is defined as any DOM element that can receive focus (Like a form field) or an element that implements its onclick event handler. When an actionable element gain focus the onfocus even is triggered, the same way, the focus is moved away from the element the onblur event is triggered. Now we can easily use those events to show the user where the focus is since the Widget Framework does not automatically highlights the focused element. We do this because we don’t want to inhibit the creativity of the widget creator to design his/her own focused highlight strategy.
The only “little” extra detail is that all elements that can gain focus need to have the tabindex property defined (the value is not important). This is easily forgotten but if not set, the focus and blur events will not trigger,
<html>
<head>
<script type="text/javascript">1:
2: function OnFocus(element) {
3: element.style.backgroundColor = "red";
4: }
5:
6: function OnBlur(element) {
7: element.style.backgroundColor = "white";
8: }</script>
</head>
<body>
<div onfocus="OnFocus(document.getElementById('one'))"
onblur="OnBlur(document.getElementById('one'))"
onclick="alert(1)"
tabindex=1>
<p id="one" style="font-size:medium:">1</p>
</div>
<div onfocus="OnFocus(document.getElementById('two'))"
onblur="OnBlur(document.getElementById('two'))"
onclick="alert(2)"
tabindex=2>
<p id="two" style="font-size:medium;">2</p>
</div>
</body>
</html>
In this example, we created two divs that can receive the input focus, you can move from one to the other using the D-Pad, the element that receives focus changes the color of its background to red.
Conclusion
Writing Windows Mobile applications is now as easy as writing a web page, and, by following some best practices your widget can be as functional and attractive as any other native application on the platform.
This is the end of this blog series and since Windows Phones are now available on many countries, you should go get one and write many cool widgets for it. Don’t forget to share the results with the world by uploading them to the marketplace!
Until next time
Jorge Peraza
Widget anatomy series at glance
#2 The keys for a great user experience
#3 Performance and battery life
#5 Touch and D-Pad inputs, oh joy!
Windows7 Trigger Start Services – Part 2: Building a Trigger Start Optimized Service
October 28, 2009 by
Filed under News
In the last post Windows 7 Trigger Start Services – Part 1: Introduction, we introduced Windows7 Trigger Services as a great way to optimize your services to have better performance and improved security. In this post you will learn how to convert a standard automatic-start service to a trigger-start service that starts up only when a certain event occurs in the system. We’ll use a WPF application (obviously managed code) that registers and monitors a service (also implemented using .NET). To bridge between the .NET world and the native Win32 APIs that we saw in the previous post, we use a C++/CLI interoperability layer.
This sample application has 3 parts:
- A C++/CLI interoperability layer that provides a regular and easy .NET API to the controller application
- A WPF controller application that lets you register and run the service
- A simple .NET service that looks for a USB storage device (disk on key) and on it, a specific folder named “ToCopy” from which to copy files to your local “C:\FromUSB” folder
The following image illustrates the solution structure.
Let’s start by reviewing the .NET Service code implementation. This is a simple Windows service written in C#. The purpose of this service is to copy pictures automatically to your local hard-drive- “c:\FromUSB” from the USB storage device that is plugged into your computer.
The service implementation can be found at USBService.cs. This class inherits the ServiceBase base class and overrides the OnStart and OnStop methods. This class has a DoWork method that actually does all the copying of images from the USB disk to your local drive. The DoWork method writes to a log file that we will be monitoring.
The real interesting part of the service implementation is the OnStart method. This method is called once the service is started. Notice that the first line of code checks whether the service is configured as a trigger start service. If the “if” statement returns false, we create a new instance of a timer and have it poll every 5 seconds. Before Windows7, this was the only way to implement such a service, that is, by regularly polling the system to check for a USB device. Therefore, the service needs to run 24×7 to poll the system. This is highly wasteful of resources and keeps the system from transitioning to a low-power state, increases the application attack surface, among other negative things.
But, with Windows7, you can configure such a service with a USB device arrival trigger. This means that the service will not run until a USB device arrives, specifically a USB generic disk device. We’ll get to that part of the solution in a second, but for now, if you look at the OnStart method, you will notice that we check whether the service is configured as a trigger start service; if it is, we simply call the DoWork method on another thread, as shown by the following code snippet. This should work just fine because the service is NOT running, and will start to run only when the trigger happens. And then it will not default to the timer, but rather use the thread pool to queue the work.
protected override void OnStart(string[] args) { if (ServiceControl.IsServiceTriggerStart(ServiceName)) { ThreadPool.QueueUserWorkItem(_ => DoWork()); } else { _timer = new Timer(_ => DoWork()); _timer.Change(0, 5000); } }
The ServiceControl namespace contains the C++/CLI interop layer. This layer uses C++/CLI as the binding element between the native API and the WPF application. The main ServiceControlInterop.cpp file contains all the functionality that we need and that is used by the WPF application. For example using the controller application we can use AddService(…) or RemoveService(…) to add or remove a service respectively. We can also configure the service as a trigger start service for either a USB device arrival or first available IP address by using SetServiceTriggerStartOnUSBArrival or SetServiceTriggerStartOnIPAddressArrival respectively. Reviewing both function implementations reveals that basically both are following identical paths. They:
- First, use OpenSCManager to get a handle to the Service Control Manager (SCM)
- Then use the SCM handle OpenService, to get an actual service handle that we wish to configure
- Finally call ChangeServiceConfig2 to set the specific trigger
All this was explained in detail in the last post (Windows7 Trigger Start Services – Part 1: Introduction
You can download the code sample for this application. Note that you will have to run Visual Studio as administrator (see image below) because you will need to register, start, and stop services. . You will also need to Windows 7 SDK to compile the C++ part of the solution.
When compiling and running the default solution (the WPF application) you will see the following image.
This is the main WPF controller application. From here, you can create the service by clicking the Create Manual button.
Next, open the Services Window by typing “Services” in the Start Menu search box. You should see the Service window. Locate the USBCopyService; it should appear as in the following image.
Click the Run button and then the Refresh button in the Services window, or just press F5. You will not notice a great deal of change, but the USBCopyService changed from Manual to Started, as shown in the following image.
A second look at the actual application reveals the service activity in the log file. As you can see in the following image, the services awaken every 5 seconds and poll the system, looking for USB devices:
Click the Stop button to stop the service and then click the Delete Service to delete it. Now click the Trigger Start button to register and configure the service as a trigger start service that is triggered once a USB Generic disk arrives. If you check the Service window, you will see the USBCopyService listed as “manual” where in reality it is configured as triggered start service (there is just no graphical representation of that).
If you plug in a USB disk with a “ToCopy” folder the service will kick into action and copy the files to c:\FromUSB. Not the best implementation, but hey, it is only a demo. The following image shows a single line in the log file because the service actually ran only once; it executed the DoWork method and then quit. It didn’t run and poll the system every 5 seconds and didn’t waste resources or become a security liability.
To conclude
Developing a service with Windows 7 trigger start service in mind might be a little more difficult than a regular “auto-run” service that just runs in idle from boot to shutdown. But in practice, all it takes is only a few lines of code, no more. And these few lines of code can have a very big affect in terms of resource consumption and security. So the next time you build a new Windows Service, try to incorporate triggers.
You can learn about Windows 7 using the Windows 7 Training Kit for Developers or by viewing Windows 7 videos on Channel 9.
You can also get hands-on experience for Windows 7 Trigger Start Services using the Windows 7 Online training that is part of the Channel 9 Learning Center
Making PCs Run Faster And Longer
October 27, 2009 by
Filed under News
Intel and Microsoft have been collaborating for more than 20 years. The day Microsoft launched Windows Vista; we had already been collaborating on Windows 7. The joint team quickly grew to several hundred engineers. Last week, the work we did together became a reality. While marrying Intel’s future Intel Core processors with Microsoft’s latest operating system was quite possibly the biggest undertaking to date for the two companies, there was a very short list of top priorities from users.
First, make notebooks run longer (“I want to watch the whole DVD on the airplane.”). Second, make it run everything faster (“I want to start work when I turn it on and don’t want that DVD, encryption or anything else to slow it down.”) So, Microsoft and Intel set to work.
A few weeks ago we had the opportunity to show some journalists what our engineers had come up with as a result of the collaboration. The resulting stories provide a good overview of some of the unique advances that the collaboration achieved to improve PCs.
Don’t we all hate it when the latest blockbuster we brought along for a long plane ride drains the laptop battery right at the climax. Of course, the same is true of other mobile situations – catching up at coffee shops, sharing photos and videos with friends, comparing prices while shopping – where plugging in is either a hassle or impossible.
To get to the movies’ credits, the team optimized resource utilization throughout the system. Devices were aggressively powered down, busses shut off when possible and Intel processors were kept in their Deep Power Down state longer and more often. The new Microsoft Windows 7 timer coalescing feature, which minimizes the time a processor is running in high gear, to take advantage of Intel Deep Power Down Technology is a good example of how we worked together to optimize our products. By applying such power saving techniques throughout the system and reducing resource utilization Microsoft and Intel engineers were able to reduce power usage of a Windows 7 laptop nearly 20 percent over an identical laptop running Windows Vista SP2. That gained an additional 1.4 hours of battery life, enough extra power to blow by the credits and see all of the special features.
Getting computers to do things faster is something Microsoft and Intel have been doing for a couple of decades. However, with Windows 7 and Intel’s new Core processors rolling out at roughly the same time, the team saw the opportunity to really put rocket engines on PCs. Possibly the most significant performance advancement is enabling the Windows 7 kernel to intelligently manipulate threads in the recently improved Intel Hyper-Threading Technology. The kernel scheduler juggles thread connections with respect to such things as logical processor/core relationships, thread-to-core distribution, and parking and unparking second logical processors in cores to match the workload. Also, the Westmere system we showed reporters was equipped with Intel Solid State Drives, reflecting another area of collaboration.
Skip the formal benchmarks. The companies made their point by booting a PC based on an Intel reference design in less than 11 seconds. Actually, that may be too fast for many as it doesn’t allow sufficient time to get a cup of coffee that many of us are used to doing.
OK, I have a vested interest, but with Windows 7 getting such hardy reviews and its optimization for new advances in Intel processors, now seems to me like a pretty good time to buy a new PC.
Joakim Lialias
Microsoft Alliance Manager - Intel

