| |
The Windows Marketplace for Mobile client provides users a streamlined experience to purchase and install applications on their Windows Mobile 6.5 devices (coming soon for 6.1, and 6.0). As you will notice when installing applications, the user interface is different from the typical CAB file installation (see below) perhaps you are used to. It is very important that the Marketplace install experience be uniform and streamlined. To keep it this way, no custom UI (errors, prompts, informational messages, etc.) should be displayed during installation or uninstallation. If you absolutely must display custom UI, there are some things you should know about the Marketplace client. The Marketplace client achieves a streamlined experience by suppressing the normal user interface, displaying a client specific progress bar and providing feedback when the installation has completed. This can cause problems for applications that have custom prompts implemented in the setup dll. For example, you may want to prompt the user to start your application after installation has completed. This is easily done by adding the appropriate MessageBox prompt to the Install_Init export of your setup dll. However, there can be problems with this. The foreground display of your MessageBox or other custom UI, depends on knowing the window handle of the calling process. When your application is installed with the Marketplace client, no window handle is passed to your setup DLLs exported functions. This can cause your custom UI to not be displayed in the foreground. This causes confusion for the user since it looks like the installation is still running, but there is no UI feedback. The only recourse for the user is to use task manager to locate the prompt window and select it to bring it to the foreground. This is a very poor user experience. You can resolve this by using the MB_TOPMOST | MB_SETFOREGROUND flags when calling MessageBox or WS_EX_TOPMOST when creating a window for custom UI. Have you tried the Marketplace client yet? No? Dont have a 6.5 ROM update or device yet? No problem. Download the Windows Mobile 6.5 standalone emulator images here. These come with a fully functional Marketplace client you can download and install apps with. Hope this helps. Mike |
| |
We are all experiencing the results of the economic reset. Companies and consumers are scaling back spending to lower levels despite modest signs of growth. However, we are all recognizing that you cannot simply save your way to success. Costs savings are critical but not enough. In response to this, businesses are emphasizing efficiency which includes trimming costs but also involves increasing productivity and innovation for sustained growth. Microsoft is calling this the New Efficiency. As mentioned last week by Stephen Rose, Microsoft is hosting a special VIP Business Leadership Roundtable event on September 29, 2009 in San Francisco from 9 to 10:30am Pacific to discuss the New Efficiency and other relevant trends. Attendees are encouraged to join in on the conversation with our CEO Steve Ballmer and co-host Robert Youngjohns as they discuss major trends in the workplace and the role of technology in driving growth and competitive advantage during this economic reset. Steve and Robert will be joined by a panel of early adopter customers representing key industries like automotive, hospitality, transportation and IT. Attendees will get a close look at how real companies are justifying IT investments across the desktop, server, and network and beyond. The event will be broadcast live over the web and listeners will be able to submit questions to Steve Ballmer and the rest of the panel. Add the event to your calendar and watch it live here at www.TheNewEfficiency.com. Things are heating up as we ramp up for Windows 7s launch on October 22nd! |
| |
You may have the technology but are you using it? Maybe youve heard the Better Together story but you have not had a chance to really fully experience it. That is exactly what we wanted to show you at Cedia 2009. Cedia is the largest event of the year for custom installers to come and learn about new technology emerging in their industry. Think of Cedia as the CES for custom installers. Windows Home Server teamed up with Windows Media Center, Windows 7 and Xbox to demonstrate how Microsoft technologies come together in the home. The booth was designed to be a replica of your home, your home office and your office away from home. This was done in an effort to emulate real working home scenarios. The picture below illustrates the booths layout: The Office: This networking nerve center demonstrated how users can access their content in various ways in their office, away from home or away from their living room. Attendees were shown such features as centralized storage, access to content on the go, Home Group, copying TV content from one Media Center to another and remote streaming. This is also where the Windows Home Server HP MediaSmart powered the entire booth, which included 9 extended Xboxs & 6 tuners connected to the N9 Niveus high-end Media Center PC with the new AEP 2.0 technology (which allows for an increase from 5 extenders to 10 & 4 tuners to 8), with photos, videos and music content. The Niveus N9 was located in the theater room. The Bedroom: Your personal get away spot in your home should enable you access to all your content at whim. The bedroom revealed a portable Windows 7 Media Center on a Sony VAIO laptop and an Xbox 360 extender connected to a large display. Giving you the ability to watch your content, listen to a little music and even record TV without leaving the comfort of your own bed; maybe you just wanted to obtain the score of your favorite team. The Windows 7 Media Center laptop demonstrated the new Netflix tile in Windows Media Center. Family Room: With only an Xbox 360 connected to your large screen TV, you have gaming and entertainment from one device. The family room is the central place to come together and watch TV, stream movies, view photos and even play some music. With the Xbox 360, you can play a few video games while streaming music from the home server. With the recent Xbox 360 update, Netflix enables you to stream movies and TV shows from the internet! Theater Room: The theater room is probably the most impressive part of the home, aside from the Windows Home Server being in the office serving all of the music, videos and photos content. Enjoy the luxury of your surround sound while playing Blu-ray movies, enjoying television, home movies or blaring music until your ears hurt. Be amazed as 8 different tuners record content at the same time and store it on the HP MediaSmart Server powered by Windows Home Server. Travel to any of the 9 different Xbox 360s in extender mode and watch the recently recorded TV or change the channel to a more enjoyable show. Cedia Announcements:Lets talk about the announcements and some of the technology making this all possible. Windows Home Server: Power Pack 3 was a big part of the show. This enables the use of libraries in Windows 7, automatic archive of TV content (which is very important with 8 tuners capturing content constantly) and single file restore in Windows 7. The Zune and Windows Phone compression feature allowed TV content to be played on your mobile devices. It was very exciting to see attendees reactions to these new features! S1Digital announced a new Digital Entertainment Platform, which provides centralized archiving, storage and distribution of HD movies, live and recorded HD television, videos, music, photos and more. This is all based on the Windows Home Server platform. Windows Media Center: Probably one of the biggest announcements at the show was the ability to add your own Digital Cable Tuners to your PC. Before, you needed to purchase a computer with a special BIOS to be able to record digital TV. CETON showed off their new single card that has 4 tuners with-in the S1 Media Center running the theater room and an extender. This single card could record 4 channels at once. They also have a 6 channel version here. Here are a few other show announcements from Windows Media Center. To read more please visit here.
|
| |
| Any webmaster would be able to tell you that the hardest aspect of creating and maintaining a website is actually choosing the right web host. There is a jungle of web hosting providers on the internet. Many are fakes and many are legitimate web hosting companies. There are different types of web hosting services available in the market but many people fail to recognize that and end up in to big confusion. With various options like dedicated hosting, shared hosting, reseller hosting, video hosting and VPS hosting it is normal for you to get puzzled. So, we are going to explain some of the terms, proposed some good hosting review site and there you can find the most popular and cheap web hosting services and their reviews. Dedicated server hosting works well for large business websites. It provides businesses with highly secure, powerful websites without the cost of having an in-house solution. Businesses can use customized software and applications meeting the specific needs of their business. However, they can do this at a much lower cost than owning and maintaining their own server. By utilizing dedicated server hosting rather than owning a server they also will not need to operate and maintain and data center. A hosting customer does not typically need a dedicated server for a basic website. If the website does not use a great deal of bandwidth or disk space, shared hosting services work quite well and at a lower cost. If a website does not require customized hardware and applications, shared hosting rather than dedicated server hosting is typically the best choice. Because dedicated hosting is costly and the small business owners do not want to take the risk initially and that is why shared hosting was the best option available for them. But then, reseller hosting came to the market. What is it? When one account owner allows somebody else to access the space for their website, then it is known as reseller hosting. So, you are the second level user here and accessing someone else's space and paying them for that. Obviously, the price becomes cheaper. This is reselling of the server. You can access the control panel and manage the database. Not only that, you will get the bandwidth reserved for that user. This is just like shared server but buying from an existing user. The other type of hosting is Virtual private servers. VPS is a web services infrastructure that slices a single physical web server into multiple "virtual" web servers. Virtual private servers take virtualization to the next level- by splitting the existing server space and creating virtual servers out of every partition. Despite sharing server hardware, each VPS is fully isolated with its own file system, processes, users, applications, and resource allocations. Thus you are allowed to do all the alterations in your rented office space and the neighbors are completely shielded out. You may wonder why VPS hosting and why not dedicated hosting. Well, the cost is really very high and unaffordable for the small businessmen. In a VPS server you can actually get the benefit of both shared server and dedicated server bit in a cheaper rate. Its not easy to decide which one you should go for. The apparent Advantages of VPS are as follows:
The only apparent disadvantage with the VPS is indeed just an out come of the facilities it provide. The fact that it allows root level access to the server means that you have to be proficient in system management for there is always a chance of wiping out system files or causing some other system malfunction. Thus, if you are not proficient in using the systems you will be better off with a hired professional taking care of your system. So, if you are webmaster who look for a good hosting site - Webhostinggeeks.com offer independent reviews of the best web hosting providers. This web hosting reviews site has been made to help you escape the jungle of web hosting provider. They have reviewed only the top web hosting companies. After you go through this review and get necessary knowledge you are ready to go to Webhostinggeeks.com website and you should have hopefully escaped from the jungle and have found the perfect host for your website. We hope the web hosting reviews on this site will be useful to you. If you are still confused send us an email or just comment this post with your question. |
Previous post: Widget Anatomy The Manifest This is part two of my Widget Anatomy series which will explain the ins and outs of the Widget Framework that is shipping as part of Windows Mobile 6.5. In this Article we will discuss the major challenges of creating a great user experience that not only looks great, but it integrates nicely with the phone and its snappy and fun to use. The dark side of choice dealing with screen DPInessOne of the coolest things about the Windows Mobile ecosystem is that there are many different devices with all shapes and forms for me to pick up the one that matches my lifestyle best. All those choices do have a dark side though, there is a variety of screen resolution/sizes we need to make sure our Widgets work and look great on. The table bellow shows all the supported Resolution/DPIs Windows Mobile 6.5 supports and as you can see it is a big table. Thankfully for widget writing, there really are only two options, one that we will call HiDPI (for 192) and then LoDPI for the rest. The reason is that, in practice, a document designed for 96 DPI (Internet Explorer on the desktop at 100%) will look fine on 96 DPI, 131 DPI and 128 DPI but it will look way too small on a 192 DPI screen. Now that we have reduced the supported DPIs to only two, then the best (and easiest) way to handle this in your widget is as follows: 1) Generate two CSS Style Sheets for your widget. You can call them something like HiDPI.css and LoDPI.css, and the basic rule is, for HiDPI, things should be about twice as big to look the same way as they do on the desktop. 2) Detect the screen resolution at runtime to determine which CSS to load. Here is an example: 1: function applyCSSStyle() { 2: var width = document.documentElement.clientWidth; 3: var cssFile = "css/LoDPI.css"; 4: if (width >= 480) { 5: // The document is wider than 480 pixels 6: // it must be a High DPI device 7: cssFile = "css/HiDPI.css"; 8: } 9: 10: // Add the correct CSS style sheet to the document 11: var headID = document.getElementsByTagName("head")[0]; 12: var cssNode = document.createElement('link'); 13: cssNode.type = 'text/css'; 14: cssNode.rel = 'stylesheet'; 15: cssNode.href = cssFile; 16: cssNode.media = 'screen'; 17: headID.appendChild(cssNode); 18: } 19: 20: function onLoad() { 21: applyCSSStyle(); 22: }How to best utilize those SoftKeysThe Widget API gives you full control over the soft key menu bar, but since we want our widgets to behave as native applications do there are a few guidelines we should try follow: 1. The left soft key should always represent the default action and it should be context sensitive to what the user is supposed to do at that particular step in the User Scenario. 2. The right soft key can be either a menu or a button, when there only are two possible actions you should save the user one click and make it a button that said, if you do this there should be a way for the user to exit the widget somewhere on your UI. Just as a quick reminder, calling widget.menu.append(menuItem) Adds a menu item to the right SoftKey, if it was a button it will turn into a menu with the non configurable label Menu, also, the Exit menu item is added automatically and cant be renamed nor removed. calling widget.menu.setSoftKey(menuItem, widget.menu.rightSoftKeyIndex) removes all menu items from the right SoftKey and turns it into a button. Best practicesThe following are some of the best practices we have found really help greatly widgets be the best they can be:
Next post: Widget Anatomy - Performance the final frontier |
If you happened to be searching for pizza on Twitter Search yesterday or are following the @mswindows Twitter account, chances are you witnessed the kickoff of #WinWin7. The Windows Outreach Team kicked off 7 weeks of Windows 7 by sending 7 piping-hot pizzas to 7 lucky Twitter followers. And it wont stop there. Throughout the next 7 weeks, @mswindows will be giving away prizes all based on the number 7 (for Windows 7). Winners must take part in the challenges and are encouraged to invite friends to join in on the fun which all culminates on launch day - October 22nd. Make sure youre following @mswindows and tell them Brandon sent you. Oh and watch for the official #WinWin7 hash tag too. Speaking of the Windows Outreach Team, how about meeting the supporting cast? You may have seen them on some of your favorite blogs and forums and didnt really know who they were. Lets change that. Jeff D, Cody G and Ron S, are a savvy team tasked with reaching out to users and creating a real resource within the communities on the Web. Along with Josh T on the @mswindows account, these team members bring a wealth of knowledge (both consumer and even a bit on the techy side) to the table. Anywhere from gaming to watching your media across your home network, these guys have been there and tried out the fixes and know what works and what doesnt. You can bet on them to offer advice and an open ear, not a sales pitch and a bottom line oddly enough, none of them wanted to be a snake oil salesman growing up. So, keep a lookout for the team on some of your favorite blogs and forums and feel free to say hi or just ask a question. Theyll be sure to help get you on the track to whatever it is you need. If you have any questions for the Windows Outreach Team, just send a tweet to @mswindows. Or leave a comment here too of course. NOTE: The Windows Outreach Team also runs the Windows Live Twitter account @windowslive too. |
| | ||||||
Since Windows Home Server is a new addition to The Windows Blog, we thought it would be a good idea to give everyone a refresh on what exactly Windows Home Server is and what it can do for you.
The great news about this product is that you dont have to be computer savvy to set it up or to use it. To get your home server up and running, it only takes three easy steps: plug in the power, connect an Ethernet cord, and install the Windows Home Server connector software. Starting to sound pretty cool? Lets take a closer look at each of these features. Organize: Lets pretend that you just got back from an amazing vacation and uploaded all of your new photos to one of your home PCs. Now, your family is over and wanting to see them, but you forgot which computer and folder you put them on. Instead of spending the time it takes to search through multiple locations, you could be using Windows Home Server and enjoying your picture slideshow. Windows Home Server provides an effortless way to organize and manage all of your media including the vacation pictures. After installation, a pre-defined set of shared folders will be shown: Photos, Music, and Videos. Windows Home Server will organize your familys files and media, by storing them in one of the shared locations. Since all of these files will be stored in a central place, they can easily be found and accessed from any computer on your home or office network. Therefore, it doesnt really matter which computer you put your pictures on since you can see them on any computer that is connected to your Home Server. Furthermore, if you enable user access, everyone on your network will have the ability to add and view media that is located in the Shared Folders. Protect:
The ability to restore individual files or even your entire computer is what makes backing up significant. Restoration can include accidentally deleted files (documents, music, pictures, videos), or complete computers. If your vacation pictures or crucial financial information accidentally get deleted, they will not be lost forever since you can restore to a previous point in time. You can also increase protection of certain files with Windows Home Server with since you have the ability to duplicate your shared folders. When you have more than one hard drive in your Home Server, your memories and files can then be stored and copied across multiple hard drives.
Share: Windows Home Server helps families and small offices centralize and connect their digital experiences. It provides an easy and reliable way to store, access, and share whatever is most important through remote access. Like other features of Windows Home Server, remote access is fast and simple to use! **Windows Home Server screen shot of uploading and sharing pictures remotely When using remote access, Windows Home Server lets you stay connected with friends and family. Once installed, your Home Server will automatically assign you an uncomplicated web address such as yourname.homeserver.net. You will then be able to share pictures, music, and documents through the password protected web address. From this site, you can upload media to the Shared Folders on your Home Server when using PCs that are not on your home network. This will give your friends and family the ability to log in through the personalized web address and download any pictures or files that you may have there. It is also simple to locate, view files, and even run applications from your home PC just as if you were sitting in front of that computer. Grow: **Windows Home Server screen shot of adding a new hard drive and total storage space With Windows Home Server, storage space grows as your digital life grows. The ability to increase the number of drives in your Home Server is one of the biggest innovations for Windows Home Server. You can very easily add internal or external hard drives of any size so that you will have an unlimited amount of storage for your collection of files, photos, and videos. Once you have two or more drives plugged in, the server will see this additional storage as one large drive instead of many individual drives. This will result in a much easier process when locating and storing files since you will only be searching through one virtual drive.
For more detailed information about Windows Home Server, check out the product guide at http://www.microsoft.com/windows/products/winfamily/windowshomeserver/support.mspx. To purchase and learn more about Windows Home Server, please visit www.microsoft.com/windowshomeserver. -Nicole |
| |
In case you havent heard the news from Sydney Australia, here is the latest scoop. The Windows Mobile 6.1 operating system, System Centre Mobile Device Manager 2008 and System Centre Mobile Device Manager 2008 Service Pack 1 (SP1) have obtained Common Criteria Evaluation Assurance Level 4 (EAL4). This news follows successful completion of the Defence Signals Directorate (DSD) Australasian Information Security Evaluation Program. The DSD is the Australian Governments national authority for information security. By meeting the security criteria for EAL4, Windows Mobile 6.1, System Centre Mobile Device Manager 2008 and System Centre Mobile Device Manager 2008 SP1 are accepted under the Common Criteria Recognition Arrangement (CCRA) by Australia and 25 other countries worldwide including the United Kingdom and the United States. The CCRA ensures that evaluations of IT products are performed to high and globally consistent standards. Thus, this certification provides government and enterprise customers with definitive information about the security features in Windows Mobile 6.1, and assurance that mobile workers can securely access sensitive data on information networks. Windows Mobile 6.1, combined with System Centre Mobile Device Manager 2008, extends mobile security for government and enterprise customers with on-device file encryption and remote device wipe, in the event of theft or loss. Users can access corporate data and intranets with mobile VPN and manage mobile fleets similar to the way IT departments manage PCs. Commenting on this certification milestone, Don Kerr, product marketing manager for Windows Mobile, said, We are extremely proud of this successful Common Criteria evaluation as it offers widely recognised assurance that Windows Mobile delivers a very high level of security and protection of information networks. Microsoft is committed to globally recognised evaluations and certification processes as a way of building trust in computing and providing customers in the public and private sectors with a more secure and reliable platform, said Mr Kerr. Mike Burgess, first assistant secretary, Information Security, Defence Signals Directorate, said, We have worked very closely with Microsoft throughout this assessment process to ensure that Windows Mobile 6.1 meets the security needs for government and enterprise networks. Our evaluation of emerging technology is rigorous, but ensures secure use in government systems. Government organisations and enterprises can be assured that Microsofts successfully evaluated products can be used to securely enable remote working. DSD looks forward to vendor interest in evaluating a hardware handset that will take advantage of Windows Mobile 6.1 to provide government with another secure option, said Mr Burgess. The 26 members included under the Common Criteria Recognition Arrangement (CCRA) are: Australia and New Zealand, Austria, Canada, Czech Republic, Denmark, Finland, France, Germany, Greece, Hungary, India, Israel, Italy, Japan, Republic of Korea, Malaysia, Netherlands, Norway, Pakistan, Singapore, Spain, Sweden, Turkey, United Kingdom and United States. |
With today’s technology it is becoming easier and easier to remain connected to our home computers. But what if we want to extend our reach from beyond the computer to actual control of our homes? Well, that, too, is becoming easier all the time, and here I will give a few tips on how to do exactly that.
As a matter of fact, we will focus on controlling your home from the comfort of your iPhone while you are out and about.
The purpose of the article is to show a way of accomplishing this, and I want to make it as simple as possible. For that reason we will focus on easy to obtain and economical hardware, and perhaps nothing in the home control market is more well known than the X10 family of controllers.
To start with, we will have a requirement - there must be a home computer left on 24 hours a day that will serve as our control point and link to the outside world.
This computer does need its local monitor to stay on when unattended - so set the screen saver and/or power settings to auto power it off after an extended period time.
This will save a little on the power bill and prolong the lifetime of the monitor. The computer itself needs only to be a standard computer… but it does need to have an available USB connector (as well as an internet connection, naturally).
To make the link from the control computer to your house power circuit you will need a USB control interface.
A quick check online shows that the X10 CM15A USB interface is available at a very reasonable price, and this will fit our needs quite well. As a matter of fact, we found the interface, controlling software, and more for under $50.
To set up the interface, you would install the included home control software and connect the CM15A to an available USB port with the provided cable after plugging it into a nearby outlet.
Once you have the interface, it is now a question of asking yourself, “What is it you want to control?”
There are separate control modules in the X10 family for a variety of situations, ranging from appliance and lamp controls to dimming wall switch replacements and HVAC controls. Of course, there are also “professional” modules that are more durable if the situation calls for it, but most homeowners will find that the standard units work okay for their needs.
Now, after you make a basic list of what items you want to control, shop online for a package deal that gives you the modules needed. By looking around for a package deal (check x10.com or ebay) you will be able to buy the modules at a very substantial savings.
Once you have the desired modules installed, it is a simple matter to set a common house code and unit ID for them.
Then you can add the modules to the home control software through its simple graphical interface, and if desired you can even set up virtual rooms for easier control. The overall control setup can be as simple or complex as you wish, but I would caution that you should start slow to see if it works for you as expected.
A nice thing about the system is that it makes life easier for you not only for the sake of remote control, but it also works great when you are at home thanks to readily available X10 remote controls and software that can schedule events automatically or event driven (such as turning on the lights throughout the house when you pull into the driveway - with the addition of an economical sensor).
Now that we have our home control system in place (at least conceptually), we need to talk about how we are going to control it via our iPhone.
This is where I feel that the simple approach really shines. I have used such systems with other mobile devices in the past (Windows Mobile, for example).
Unfortunately, Murphy’s Law loves to tinker with anything cool, and remote home control is not impervious. Instead of custom (and/or expensive) software, using a remote PC software such as LogMeIn Ignition on the iPhone allows you to not use the installed control software on the home computer, it will also show any warnings or issues that may be of immediate interest.
Plus it gives you access to said home computer for any files or email, and provides for a single point of access when you need to check on things back at the ranch.
By using generic remote software you can also stop and restart any misbehaving control programs from the iPhone, and if needed reboot the control PC to correct a communications problem with the power interface (rare, but it happens).
Now that you have everything in place, you should be able to whip out the iPhone and turn on the porch lights and dim the living room lights.
While you’re at it, you can set up a schedule to kick on tomorrow night (when you will be hiking on the trails out of tower reach). Or even check on the pics from the web cam, noting that all looks as you expect.
It’s the next best thing to being there.
| | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Update: As of August 10, 2009, the requirement for the PNG Start Screen icons has changed from requiring three to one (90x90) PNG icon. This post has been updated to reflect this change. You can satisfy this requirement via the static setup described below. If youve seen the any of the plethora of Windows Mobile 6.5 screen shots, likely youd agree that it looks much better than previous versions. A component of this face lift, is support for PNG files in the Window Mobile 6.5 Start screen. Including a nicely rendered PNG file as your application icon is important to ensure the highest quality user experience across different devices. If you plan to distribute your application via Windows Marketplace for Mobile (and I dont know why you wouldnt) the requirements document requires that you use a 90 x 90 Start screen icon for your application. This post will cover how to use PNG files as icons in the Windows Mobile 6.5 Professional Start screen. For information on creating PNG icons, see my previous post on Creating Custom Icons for Windows Mobile 6.5. The sample code I will be referring to in this post can be found here. Contents:Start Screen: Resolution / DPI and Icon Size Start Screen: Resolution / DPI and Icon SizeThe Start Screen is one of the huge improvements in Windows Mobile 6.5 Professional. This replaces the Start Menu in previous versions. The improvements include: enhanced touch screen navigation (tap, tap and hold, pan, and flick) and more options for organizing and presenting Start menu items. If you are an experienced Windows Mobile developer, you know that depending on the DPI and resolution of the device, the shell extracts the appropriately sized icon from the EXE for display in the Start screen. Windows Mobile 6.5 still supports this; however now it also supports the display of PNG file icons. The shell does not automatically select the size of the PNG icon based on the device DPI. This dynamic selection of the icon is done in a setup dll. (See dynamic setup below.) However, if you do not want to provide a separate PNG file for each DPI, you can provide one (90x90) and the shell will scale down the icon as necessary, depending on the DPI of the device. (In fact, this is the Marketplace requirement.) The table below illustrates the DPI / resolution and icon size relationship.
Registry KeysTo have the Start screen use a PNG file instead of an icon embedded in the EXE, you need to provide the following registry entries: [HKEY_LOCAL_MACHINE\Security\Shell\StartInfo\Start\Phone.lnk] Here are the definitions of the value pair settings:
Security note: This requires creating a registry key underneath HKLM\Security. This is a protected registry location. To write to a protected registry key, the CAB file needs to be signed. This will not be a problem for Marketplace applications, since by definition they are signed. As mentioned, this article only applies to Windows Mobile Professional devices. However, if your use the same CAB for a Standard device installation, you will need to make sure your application is signed privileged, otherwise setup will fail. SetupIn the next two sections, Ill walk through two deployment scenarios, static and dynamic. Static Setup:You can specify the registry key as part of your CAB file configuration. Per the Marketplace requirements, I will use a 90 x 90 PNG file as the Start screen icon. In my Smart Device CAB project, I have added the following registry key: Note: This registry key supports CE strings and .INF file strings. Above %InstallDir% maps to the \Program Files\SMS Intercept directory. My CAB file also includes the (90x90) AppIcon.png and a shortcut of the same name as the registry key above (SMS Intercept.lnk). See below: Dynamic Setup:Detecting DPI:Another way to configure the Start screen icon is dynamically: copying the appropriately sized PNG file based on the DPI of the device. We will use a setup dll to detect the DPI, and copy the appropriate PNG. You may know that WCELOAD (the EXE that process the CAB file) or a DLL that is loaded into its process, will return the same DPI (96) no matter the actual DPI of the device. To workaround this, we launch a very small helper EXE that quickly exits, without UI, and returns the DPI. The SDK sample ResDLL uses this technique as well as demonstrates how to install DPI specific resource DLLs. Here is the code used to detect the DPI: int WINAPI WinMain( HINSTANCE hInstance, Copy DPI specific files:Our dynamic CAB file contains four png files: Based on the DPI detected, we copy the appropriate PNG file to the filename AppIcon.png. AppIcon.png is included in the CAB as a fallback in case our DPI detect logic fails. The unused icons and the DPI detect EXE are deleted. Here is a code snippet from the sample setup dll (SetupDPI) implementing this: wsprintf(szFile,_T("%s\\%s"), pszInstallDir, _T("\\GetRealDPI.EXE")); Create Shortcut:As mentioned, we do the post-processing of the files after the CAB is installed (in the Install_Exit function). That is, because the icon image in the Start screen is created when the shortcut is created (see the cached icons section below), we need to create the shortcut in the setup dll instead of in the CAB file as was done in the static CAB sample. Otherwise, the Start screen will use an icon extracted from the EXE instead of the PNG file. Here is the language independent code that creates the shortcut: // Build lnk filename Note that the dynamic CAB sample does not not contain the file system declaration that creates a shortcut as the static sample CAB does. Cached IconsDuring development, you will likely want to change the PNG file as you experiment will different artwork. You will notice that if you overwrite the PNG file, the Start screen will not use the new image. This is because when the Start screen shortcut is created, the icon image is cached by the shell. Thereafter for better performance, the shell retrieves the image from the cache. The cache is rebuilt a boot time. Here is one possible workaround:
Here is provisioning XML that does this. You can run this using RapiConfig.exe: <wap-provisioningdoc> ConclusionYou should now understand how to configure your CAB file projects to include PNG files as icons in the Windows Mobile 6.5 Start screen. For a list of frequently asked questions on this topic see here: Start Screen PNG Icon FAQ |
With the release of the XP Mode Release Candidate, there has been a lot of talk and confusion around when XP Mode is a ideal solution and when you should look at Med-V as a solution . I thought I would take a few minutes to clear up any confusion. Well, let me start with actually talking a bit about [Windows] XP Mode. We introduced Windows Virtual PC in Windows 7 with new capabilities, such as support for USB (Universal Serial Bus) devices, and seamlessly integrating the Virtual PC applications into the Windows 7 desktop and making them available for the users from the start menu. Windows XP Mode is just a preconfigured Windows XP virtual image and it is available for any user that has Windows 7 Pro [Professional] and above. The whole Windows XP Mode is specifically designed to help small business users run Windows XP application on Windows 7 in case that the application would not run on a Windows 7 operating system. However, you ask why people need something beyond that, then with [Windows] XP Mode, users are required to setup their Windows XP applications themselves. I mean each physical PC has its own virtual Windows XP environment and is controlled and managed by the end-user. It is not designed for IT environments or centrally managed deployments. And this is exactly where you need MED-V. MED-V adds everything that is required to support the larger deployments of [Windows] XP Mode. It includes the provisioning of an IT configured virtual machine, customizing the specific XP environments on the end-devices to connect to the [Microsoft] Active Directory domain and to adjust the settings of the Virtual PC to the specific parameters of the device. So it adjusts them according to the network setting of the device, according to the amount of memory available, and other settings on the PC. Finally, MED-V will also offer monitoring and troubleshooting for all those Virtual PC deployed in the environment. So here are some breakdowns to answer common questions What is Windows XP Mode, Windows Virtual PC and MED-V?
The breakdown Windows XP Mode is specifically designed to help small businesses users to run their Windows XP applications on their Windows 7 desktop.
Microsoft Enterprise Desktop Virtualization (MED-V) is designed for IT Professionals.
Which customers should use Windows XP Mode? Windows XP Mode is suitable for small and medium business users, who are able to set their XP applications themselves or with the help of an IT professional. Each device has its own virtual Windows XP environment, that is controlled and managed by the end user. Windows XP Mode is not designed for large, centrally managed deployments, and is not suitable for organizations that have widely deployed business applications that require Windows XP. How does MED-V adds management to Windows Virtual PC? To provide a managed, scalable solution for running virtual Windows XP applications, MED-V addresses many of the IT challenges around deployment and management including:
How do I purchase MED-V? MED-V is licensed as part of MDOP subscription that is available for purchase for Software Assurance customers. What are the key features of new version of Windows Virtual PC? Easy setup of Windows XP Mode Once both the Windows Virtual PC and the virtual Windows XP environment are installed, Windows Virtual PC provides a simple wizard to setup the Windows XP Mode with just a few clicks. USB Support - Users can access USB devices attached to Windows 7 directly from Windows Virtual PC. These devices include Printers and Scanners, Flash Memory/Sticks and External Hard Disks, Digital Cameras and more. Seamless Applications Publish and Launch applications installed on Windows Virtual PC directly from the Windows 7 desktop, as if they were installed on the Windows 7 itself. Folder Integration between Windows 7 and Windows Virtual PC Access your Windows 7 Known Folders: My documents, Pictures, Desktop, Music, Video, from inside the virtual windows environment, such as Windows XP Mode Clipboard Sharing Cut and paste between your Windows 7 and Windows Virtual PC. Printer Redirection Print directly to your attached printer from your Windows Virtual PC applications either in application mode or desktop mode. SPECIAL THANKS TO Ran Oelgiesser and Fei Lu for their help with this post. |