If you were not able to make it to MMS, or were unable to clone yourself to attend all the sessions taking place at the same time, fear not! Over 160 sessions across 5 technical tracks are now available at Digital MMS.
http://www.mms-2012.com/digitalmms
You can take a Windows PowerShell crash course from Don Jones, or learn basic or advanced PowerShell with Jeffrey Snover and Travis Jones. (Guess what topic I’m ramping up on these days?)
In addition to the obvious sessions about System Center 2012, there is a ton of content on Deploying Windows 7, monitoring Linux, Virtualization, Windows Intune… You could watch videos 8 hours a day for the next month and still not see everything!
When prioritizing, then, make sure to watch the session from my good friend Iftekhar.
I have put up a post over on the PTS Blog that shows how to modify SharePoint Search results to include the Document ID in search results. The principles in that post can be used to surface other information that may not be included in the out-of-box search results.
Check it out: SharePoint 2010–Returning Document ID in Search Results
Ubiquitous connectivity and communication sources are a blessing and a curse. It is amazing that I can speak with my co-worker in Germany and get an answer as if he were sitting right next to me. On the flip side of the coin, my co-workers (and family, and friends) all over the world (or in the cube right behind me) can bug me ask me important questions at a whim.
While I love chatting with folks, sometimes I really need to stop the interruptions so that I can get some work done.
Fortunately, as I use Lync, there are a few features that make it easy to manage who can contact you, and when. Nobody I speak to seems to know these features are available, so I thought I’d share :).
By default, Lync dynamically updates your status based on your calendar. If you are in a meeting, your status will turn red and display “In a Meeting”. If you are away from the computer for 5 minutes, Lync will display “Away”. If you are at your computer and not in a meeting, Lync will show you as “Available”, which is a magnet for interruptions.
You can manually change your status to “Busy” or “Off Work” or “Away”, but know that Lync will keep this status until you manually choose “Reset Status”. Keep this in mind before you set your status to “Away” and leave it that way for 3 weeks. Your boss may wonder why she is paying you ;)
Anyhoo… There is an oft-overlooked and very powerful option that you can choose. “Do Not Disturb”
When this is selected, you can still IM people, but THEY CANNOT DISTURB YOU. They get the following message when they try. If they persist and send, Lync will inform them that the message was not sent.
However… what if you want a few select people (like your boss!) to be able to IM you, while blocking out the rest of the world? Enter unknown-feature part deux:
You can right-click on any contact in your Lync list, and change your privacy relationship. By default, Lync works some magic to figure out your relationship to the person, and grants different rights to that person. Most of your co-workers should be “Colleagues” by default. They will be able to see that you are IN a meeting, but not the details of the meeting. They can also not interrupt your Do Not Disturb.
The “Workgroup” relationship should be reserved for those that you really trust. They can see your meeting titles and can choose to interrupt your Do Not Disturb status. Use this status sparingly.
If you somehow have your ex-girlfriend as a contact in Lync, and they keep contacting you in the middle of the day to reminisce about the days when you were together… you can even use the “Blocked Contacts” relationship. They won’t be able to see your status or contact you.
A pretty table that lays out what a person in each privacy relationship can see (which I shamelessly copied from the Control access to your presence information article on the Office Site) follows :)
Apparently I am only the second person on the internet to hit this error (judging by my Bing search this morning), but I thought I would share the solution in case someone else ever hits it :).
I was attempting to copy a 150 GB VHD file from one Windows Server 2008 R2 server to another, and after approximately 30 minutes, I would get the following error:
Move File An unexpected error is keeping you from moving the file. If you continue to receive this error, you can use the error code to search for help with this problem. Error 0x80070299: The requested operation could not be completed due to a file system limitation.
Move File
An unexpected error is keeping you from moving the file. If you continue to receive this error, you can use the error code to search for help with this problem.
Error 0x80070299: The requested operation could not be completed due to a file system limitation.
It turns out that the destination directory that I was copying to had NTFS compression enabled, and directories with NTFS compression enabled will not accept files over a certain size (according to this article on MSDN it is ~30GB: File Compression and Decompression). As the file I was copying was just going to be archived, I disabled NTFS compression, zipped up the file, and copied it over with no problems.
For what it’s worth, although it was not the cause of my problem, I do see that KB 967351 mentions that this error can also be caused by a heavily fragmented hard drive. The article also mentions compression as a potential problem, with 40-90GB as the threshold for errors:
Compressed files are more likely to reach the limit because of the way the files are stored on disk. Compressed files require more extents to describe their layout. Also, decompressing and compressing a file increases fragmentation significantly. The limit can be reached when write operations occur to an already compressed chunk location. The limit can also be reached by a sparse file. This size limit is usually between 40 gigabytes (GB) and 90 GB for a very fragmented file.
I got a rather official-looking phishing e-mail this evening, asking me to verify my Bank of America sitekey. As I do not bank with BOA, this set off some alarm bells. I always make sure to report phishing sites through the handy “Report unsafe website” feature of Internet Explorer 9, so that the site can be added to the SmartScreen Filter.
.
It turns out that somebody beat me to the punch. Internet Explorer warns me in no uncertain terms that I should not visit this site. This is a warning that even my grandma would not miss.
The same site in Google Chrome?
and Firefox 4?
If there is a place with Chrome or Firefox to submit feedback that a given site is a phishing site, I can’t find it. According to Firefox’s Phishing and Malware Protection site, Firefox 3 and later will warn you if you hit a known phishing site. I don’t see any way for users to add to the Firefox list. If you have any idea how to submit a page to their filter, please add it in the comments.
For Chrome, they have a web page (http://www.google.com/safebrowsing/report_phish/) that will allow you to report a phishing site, but I don’t see any option to do so directly in the browser (unless Tools –> Report an Issue is the official way, in the same place as “Page Formatting and Layout” or “Synced Preferences”).
Long story short… if you would like your friends and family to avoid phishing and malware sites, IE 9 is the way to go :)
Clicking “next” “next” on an installer is sooo 2007. If you stand up and take down SharePoint 2010 farms on a frequent basis (for development or test servers), or you want to be able to quickly do so (maybe for disaster recovery), you have two options.
1) Read through the documentation and figure it out on your own: Install SharePoint Server 2010 by using Windows PowerShell
2) Use the SharePoint 2010 Developer Workstation Easy Setup Script (and modify it for your needs)
or
3) Use the awesome whizbang killer AutoSPInstaller scripts on Codeplex: http://autospinstaller.codeplex.com/
This project consists of PowerShell scripts, an XML input file, and a standard windows batch file (to kick off the process) which together provide a quick and near-unattended installation and initial config (Service Apps, My Sites) of Microsoft SharePoint Server 2010. Works on both Windows 2008 and 2008 R2 (x64 only of course). Perfect for repeated Virtual Machine-based installs/tear-downs, etc., but also great for production installs where you want to guarantee consistency and minimize data entry glitches. The immediate value is for installing and configuring the first/only server in a farm, but also supports using server-specific input files when running the script on subsequent servers (with parameters - e.g. for the service apps - set according to your desired topology). "But doesn't SharePoint 2010 have a nice wizard now that does all this for me??" - Yes, and it's a huge improvement over what was available in MOSS 2007. However if you've ever seen the 'DBA nightmare' left behind on your SQL server after the Farm Configuration Wizard has completed (GUID'ed databases with inconsistent naming, etc.): ...then you'll see the value in having consistently-named but automatically-created databases:
This project consists of PowerShell scripts, an XML input file, and a standard windows batch file (to kick off the process) which together provide a quick and near-unattended installation and initial config (Service Apps, My Sites) of Microsoft SharePoint Server 2010. Works on both Windows 2008 and 2008 R2 (x64 only of course).
Perfect for repeated Virtual Machine-based installs/tear-downs, etc., but also great for production installs where you want to guarantee consistency and minimize data entry glitches. The immediate value is for installing and configuring the first/only server in a farm, but also supports using server-specific input files when running the script on subsequent servers (with parameters - e.g. for the service apps - set according to your desired topology).
"But doesn't SharePoint 2010 have a nice wizard now that does all this for me??" - Yes, and it's a huge improvement over what was available in MOSS 2007. However if you've ever seen the 'DBA nightmare' left behind on your SQL server after the Farm Configuration Wizard has completed (GUID'ed databases with inconsistent naming, etc.):
...then you'll see the value in having consistently-named but automatically-created databases:
The scripted process will:
Get it here: http://autospinstaller.codeplex.com/
The Microsoft Download Center has a neat poster (available in PDF, Visio, and XPS formats) walking through the advantages, limitations, and requirements for the different deployment options available to small and midsize businesses planning on a deployment of Windows 7.
Explore the different options for deploying Windows 7 in a small or midsize organization. This print-ready poster from the Springboard Series for Windows 7 features an overview of each method, details on advantages and limitations, basic requirements, and helpful links to additional tools and guidance. You'll also find a helpful step-by-step overview of the Windows 7 deployment process.
Get the poster here: Windows 7 Deployment Options for Small and Midsize Businesses
While you’re at it, swing by the Windows 7: Small and Midsize Business Corner for more information, walkthroughs, and video tutorials on each Windows 7 deployment option.
The subject line says it all… if you create a web part page in SharePoint 2010, by default you will have a page that has the top (global) navigation, but no current navigation on the left. This may be exactly what you want, as you will have a bit more space to work with. If you want to show the current navigation on the left hand side of a web part page, here is how to do it:
1: <%-- <style type="text/css"> 2: body #s4-leftpanel { 3: display:none; 4: } 5: .s4-ca { 6: margin-left:0px; 7: } 8: </style> --%>
1: <%-- <style type="text/css">
2: body #s4-leftpanel {
3: display:none;
4: }
5: .s4-ca {
6: margin-left:0px;
7: }
8: </style> --%>
1: <%--
2: <asp:Content ContentPlaceHolderId="PlaceHolderNavSpacer" runat="server"></asp:Content>
3: <asp:Content ContentPlaceHolderId="PlaceHolderLeftNavBar" runat="server"></asp:Content>
4: --%>
Save the page, preview in browser, and voila! Your current navigation is now on the left. If you like the changes, rename your copy to the original filename and you are all set to go!
PowerShell and SharePoint 2010 go together like peanut butter and chocolate, and Toni Frankola has combined the two to automate a rather error-prone administrative task.
Configuring PDF related stuff for SharePoint 2010 (and 2007) is very simple, yet annoying and often forgotten SharePoint configuration step. There are nice articles (link, link) to help you configure it but when you do it manually chances are you will miss configure something. I wrote a simple PowerShell script to automate this, and it will do everything for you > configure PDF Icon and PDF crawling. Here is what you need to do:
Configuring PDF related stuff for SharePoint 2010 (and 2007) is very simple, yet annoying and often forgotten SharePoint configuration step. There are nice articles (link, link) to help you configure it but when you do it manually chances are you will miss configure something.
I wrote a simple PowerShell script to automate this, and it will do everything for you > configure PDF Icon and PDF crawling.
Here is what you need to do:
Grab the Powershell script and instructions over at SharePoint Use Cases
Today’s entry in the “Sean’s simple question about why a KB article had not been updated leads to a lot of research and learning” post is courtesy of managed accounts and password changes with SharePoint 2010.
With SharePoint 2007, instructions on changing service accounts and passwords could be found in the appropriately named KB article:
How to change service accounts and service account passwords in SharePoint Server 2007 and in Windows SharePoint Services 3.0
The steps in the KB article would walk you through the individual STSADM commands that were necessary to update the password for the following accounts on every server in the SharePoint Farm:
Other accounts had to be changed from within Central Administration:
The KB article included a sample script that could be used to automate password changes; combining the given stsadm commands into a batch script that accepted a username and password as input parameters. The script assumed that all services on the farm were running with the same domain account, which may be a standard configuration for a standalone development server, but is not realistic in a production SharePoint Farm. As there was no centralized management and deployment of passwords across a SharePoint 2007, the password updates for service accounts had to be entered on every server in the SharePoint farm.
Imagine a scenario where a SharePoint Administrator is asked to improve security and ensure application isolation so that all web applications and services running on the farm machines are using different domain accounts (for a total of 10 accounts, used across 5 separate servers in the SharePoint farm). In this scenario with SharePoint 2007, password changes required the SharePoint Administrator to:
In this scenario, with 10 accounts to be updated on 5 servers, there are 50 passwords that need to be updated with STSADM or through Central Administration. This required a significant amount of manual work, and was prone to human error in entering the STSADM commands required. As a result, it was tempting for SharePoint administrators to check the “password does not expire” box for the service accounts in Active Directory (which is a bad idea from a security perspective), or to use a single Active Directory account for all services running on the SharePoint farm. Neither option is a good idea from a security or isolation perspective.
There is not a SharePoint 2010 equivalent to the “How to change service accounts and service account passwords in SharePoint Server 2007 and in Windows SharePoint Services 3.0” article, due to some significant improvements that have been introduced to allow service accounts and passwords to be easily managed in SharePoint farms of all sizes. In short, assuming all SharePoint service accounts for a SharePoint 2010 farm are using a single account, the entire script from the KB article could be replicated with the following Windows PowerShell command:
Set-SPManagedAccount –Identity domain\user –NewPassword “password”.
Note: Windows Server 2008 R2 includes managed accounts at the operating system level. Do not use Windows Server 2008 R2 managed accounts for managing SharePoint accounts. They are not compatible with SharePoint Server managed accounts. Although the concept is similar, SharePoint has no way of knowing when a password has been changed for an account managed by Windows Server 2008 R2, and will not roll the password change to all servers in the farm.
Managed Accounts on SharePoint 2010 can be mapped to one, many, or all of the following on SharePoint 2010:
The following screenshot shows an example of accounts that would be mapped to managed accounts on a typical SharePoint 2010 farm.
Passwords for the following cannot be mapped to managed accounts, and must be manually changed when necessary:
The steps to configure managed accounts and automatic password changes can be found in the TechNet article: Configure automatic password change (SharePoint Server 2010):
To configure managed account settings by using Central Administration 1. Verify that the user account that is performing this procedure is a member of the Farm Administrators SharePoint group. 2. On the Central Administration Web site, select Security. 3. Under General Security, click Configure managed accounts. 4. On the Managed Accounts page, click Register Managed Account. 5. In the Account Registration section of the Register Managed Account page, enter the service account credentials. 6. In the Automatic Password Change section, select the Enable automatic password change check box to allow SharePoint Server 2010 to manage the password for the selected account. Next, enter a numeric value that indicates the number of days prior to password expiration that the automatic password change process will be initiated. 7. In the Automatic Password Change section, select the Start notifying by e-mail check box, and then enter a numeric value that indicates the number of days prior to the initiation of the automatic password change process that an e-mail notification will be sent. You can then configure a weekly or monthly e-mail notification schedule. 8. Click OK.
1. Verify that the user account that is performing this procedure is a member of the Farm Administrators SharePoint group.
2. On the Central Administration Web site, select Security.
3. Under General Security, click Configure managed accounts.
4. On the Managed Accounts page, click Register Managed Account.
5. In the Account Registration section of the Register Managed Account page, enter the service account credentials.
6. In the Automatic Password Change section, select the Enable automatic password change check box to allow SharePoint Server 2010 to manage the password for the selected account. Next, enter a numeric value that indicates the number of days prior to password expiration that the automatic password change process will be initiated.
7. In the Automatic Password Change section, select the Start notifying by e-mail check box, and then enter a numeric value that indicates the number of days prior to the initiation of the automatic password change process that an e-mail notification will be sent. You can then configure a weekly or monthly e-mail notification schedule.
8. Click OK.
1. Verify that the user account that is performing this procedure is a member of the Farm Administrators SharePoint group. 2. On the Central Administration home page, click Security, and then in the General Security section, click Configure service accounts. 3. On the Service Accounts page, in the Credential Management section, in the upper drop-down list, click the service for which you want to update credentials. 4. In the Select an account for this component list, click the domain account that you want to associate with this service. 5. If you want to register the account that you selected on the SharePoint Server 2010 farm, click Register Managed Account. 6. Click OK.
2. On the Central Administration home page, click Security, and then in the General Security section, click Configure service accounts.
3. On the Service Accounts page, in the Credential Management section, in the upper drop-down list, click the service for which you want to update credentials.
4. In the Select an account for this component list, click the domain account that you want to associate with this service.
5. If you want to register the account that you selected on the SharePoint Server 2010 farm, click Register Managed Account.
6. Click OK.
Once managed accounts have been registered and mapped to services, there are four ways to update the password. Automatic Password Change was discussed in the Configuring New Managed Accounts section above, and now we will discuss:
1) Verify that the user account that is performing this procedure is a member of the Farm Administrators SharePoint group. 2) On the Central Administration Web site, select Security. 3) Under General Security, click Configure managed accounts. 4) Click the Edit button next to the account that you want to change. In the Credential Management section of the resulting page, there are 3 options: If the Change password now checkbox is checked, then additional controls in the section are enabled which can be used to select of one of three password change mechanisms outlined below: Generate new password If the administrator wants the password changed to an automatically generated password, the “generate new password” option will immediately initiate the password creation and roll process upon page submit. Set account password to new value If the administrator wants to manually change the service password to a specific value, selecting the “set account password to new value” option and then entering the password will immediately initiate the password change process using the specified service account password upon page submit. Use existing password If the administrator has already manually changed the service password, selecting the “use existing password” option and then entering the password will immediately initiate the password roll process using the specified service account password upon page submit.
1) Verify that the user account that is performing this procedure is a member of the Farm Administrators SharePoint group.
2) On the Central Administration Web site, select Security.
3) Under General Security, click Configure managed accounts.
4) Click the Edit button next to the account that you want to change.
In the Credential Management section of the resulting page, there are 3 options:
If the Change password now checkbox is checked, then additional controls in the section are enabled which can be used to select of one of three password change mechanisms outlined below:
If the administrator wants the password changed to an automatically generated password, the “generate new password” option will immediately initiate the password creation and roll process upon page submit.
Set account password to new value
If the administrator wants to manually change the service password to a specific value, selecting the “set account password to new value” option and then entering the password will immediately initiate the password change process using the specified service account password upon page submit.
Use existing password
If the administrator has already manually changed the service password, selecting the “use existing password” option and then entering the password will immediately initiate the password roll process using the specified service account password upon page submit.
Many organizations have the “Minimum password age” password policy set to a value greater than 1.
As discussed in the TechNet Article Enforcing Strong Password Usage Throughout Your Organization
Minimum password age determines how many days a user must keep new passwords before they can change them. This setting is designed to work with the Enforce password history setting so that users cannot quickly reset their passwords the required number of times and then change back to their old passwords. The value of this setting can be between 0 and 999; if it is set to 0, users can immediately change new passwords. The Microsoft recommendation for this value is 2 days.
If a password already been changed in Active Directory, updating the managed account value under “Set account password to new value” section will often trigger the following error. This is due to the fact that SharePoint is attempting to update a password that has already been updated within the “Minimum password age” policy.
Error: The password does not meet the password policy requirements. Check the minimum password length, password complexity and password history requirements.
The solution to this problem is enter the updated password in the “Use existing password” section of Credential Management.
Directly underneath the Automatic Password Management section of the Managed Account page is Account Information. The account information section displays information about the last and next password change and the list of farm components currently mapped to this managed account.
The managed account can be removed only if no items are set to use the account within the farm. When an administrator chooses to remove a managed account, they will be presented with the Remove Managed Account page. The administrator has the option of changing the password before removing the account in order set it to a known value. This page does not actually delete an account in active directory or on the local machine, but it instead only allows an existing account to be removed from registration in the SharePoint farm.
If you attempt to remove a managed account that is still mapped to a SharePoint component, you will receive an error like the following. In order to remove the managed account, you must unmap the managed account from any associated services.
<note: The samples below are courtesy of my non-developer brain. While they work fine for me, they may eat all the cookies in your house, erase your SharePoint farm, or date your girlfriend behind your back. They probably need to be modified to work in your environment, and appropriate caution should be exercised before copying and pasting code from any website, especially anything written by me. The scripts below and require you to manually enter the domain\user of the managed account. If there is someone that knows Powershell better than me, it would be nice to have the script to run get-SPManagedAccount, pipe the results to a screen allowing you to choose the account, rather than having to manually type it in, and then loop at the end to ask if there are any more accounts you would like to change the password for. If you figure out how to do that, please post the solution in the comments!>
Managed Accounts can be created, removed, and updated with Windows PowerShell, using the following cmdlets. I have provided some samples of managed account credential management, which can be tweaked to fit your situation. The TechNet reference for the Windows PowerShell cmdlets are available at the following links:
Note: the sample scripts below must be run from the SharePoint 2010 Management Shell (which adds the SharePoint cmdlets to Windows PowerShell). From your Start menu select “SharePoint 2010 Management Shell” or Start, “Microsoft SharePoint 2010 Products”, “SharePoint 2010 Management Shell”.
If running Windows PowerShell natively, the following lines should be added to the beginning of the script:
$ver = $host | select version
if ($ver.Version.Major -gt 1) {$Host.Runspace.ThreadOptions = "ReuseThread"}
Add-PsSnapin Microsoft.SharePoint.PowerShell
Set-location $home
#Input the Managed Account
#If there is only one managed account, the following line could be written as:
#$inputManagedAcct = Get-SPManagedAccount
$inputManagedAcct = Read-Host "Enter managed account as Domain\User"
#Input the desired new password
$inputPasswd = Read-Host "Enter new password for managed account" –AsSecureString
#Change the password for the managed account to the new value
Set-SPManagedAccount -Identity $inputManagedAcct -NewPassword $inputPasswd
Set-SPManagedAccount –Identity domain\user -AutoGeneratePassword $true
If the password for a managed service account has been manually changed outside of SharePoint (such as directly in Active Directory), you can update the password to the new value in SharePoint 2010 as follows
$inputManagedAcct = Read-Host "Enter managed account as Domain\User:"
$inputPasswd = Read-Host "Enter password from Active Directory for managed account:" –AsSecureString
#Change the password in SharePoint for the managed account to the new value
Set-SPManagedAccount -Identity $inputManagedAcct -ExistingPassword $inputPasswd –UseExistingPassword $true
This is the command-line equivalent to the password policy error shown in the Graphical User Interface (GUI) above. Specifically, the error occurs when choosing between the –NewPassword and –ExistingPassword options for the Set-SPManagedAccount PowerShell cmdlet, if a password has already been changed in Active Directory.
The resulting error message is:
Set-SPManagedAccount : The password does not meet the password policy requirements. Check the minimum password length, password complexity and password history requirements.
If the password has already been reset in Active Directory and just needs to be updated in SharePoint, use the –ExistingPassword parameter. If the password needs to be changed in both SharePoint and Active Directory, use the –NewPassword parameter.
Hello All-
I just wanted to write a quick note to let you know that I will be splitting my blogging time between my site here and the new blog I have setup for my team at Microsoft (Partner Technical Services). My team has a ton of smart consultants globally that work with Microsoft Partners as a benefit of their membership with the Microsoft Partner Network, and I will be moderating their new blog (and posting there myself). We get to work with thousands of Partners on thousands of projects each year, and I will be helping the team to share some of the neat problems and solutions we encounter each day.
So… add the following blog to your RSS reader and visit regularly
Partner Technical Services Blog
I am loving my new Samsung Focus, and have been adding in some applications, including the excellent Weatherbug, Netflix, Facebook, and Flixter apps. However… today I found my favorite app of all. The app is the appropriately named PODCASTS!, an app that searches the Zune Marketplace for podcasts, shows you a nice write-up and image, and then streams them directly. The user interface is awesome, the functionality is great, and the price is right (free)!
To be fair, the app icon is a bit corny :) I would be nice if they added a live tile to cycle through images of my favorite podcasts.
Anyhoo… I give you: screenshots.
Download it here: PODCASTS!
Wishlist for version 1.1:
Just saw the following announced… we have a team of folks that will write code samples for free in order to save you time as a developer. How cool is that?
Today, the Microsoft All-In-One Code Framework team announces an innovative “FREE” code sample request service for customers. This service is a proactive way for our developer community to obtain code samples for certain programming tasks directly from Microsoft. Our goal is to alleviate the frustration felt by developers. Developers are encouraged to submit code sample requests dealing with Microsoft development technologies to our site. At the same time, developers can now vote for newly submitted or existing code sample topics. Here’s the exciting part! Microsoft engineers will then pick the requests with the highest number of votes and provide the code samples. It’s all FREE! The reason why this program was created was to provide personalized and connected services to the developer community. This is a new way to listen to our customer needs and reduces the amount of effort needed for developers to complete their work. Please see the full announcement: http://1code.codeplex.com/wikipage?title=NEW%2c%20FREE%20Code%20Sample%20Request%20Service%20from%20Microsoft%20All-In-One%20Code%20Framework.
Today, the Microsoft All-In-One Code Framework team announces an innovative “FREE” code sample request service for customers. This service is a proactive way for our developer community to obtain code samples for certain programming tasks directly from Microsoft. Our goal is to alleviate the frustration felt by developers.
Developers are encouraged to submit code sample requests dealing with Microsoft development technologies to our site. At the same time, developers can now vote for newly submitted or existing code sample topics. Here’s the exciting part! Microsoft engineers will then pick the requests with the highest number of votes and provide the code samples. It’s all FREE!
The reason why this program was created was to provide personalized and connected services to the developer community. This is a new way to listen to our customer needs and reduces the amount of effort needed for developers to complete their work.
Please see the full announcement: http://1code.codeplex.com/wikipage?title=NEW%2c%20FREE%20Code%20Sample%20Request%20Service%20from%20Microsoft%20All-In-One%20Code%20Framework.
For staying on top of my external blog feeds, I use a web-based RSS reader that works quite well. Inside the corporate firewall, I subscribe to a number of internal/authenticated feeds from SharePoint, which are deposited into the “RSS Feeds” folder of Outlook.
Unfortunately, I use many folders in Outlook, and most are used to store messages that have been moved out of my inbox. Out of site is out of mind, and I tend to forget to check my RSS Feeds folder for new posts on a regular basis.
If only there was a way to move new blog posts from the “RSS Feeds” folder into my inbox (that I check 476 times a day).
Fortunately, there is! It turns out that you can create rules on the RSS Feeds Folder just like you can on any other folder, and select your inbox as the destination posts from a particular submitter (or whatever criteria you specify).
Even better, you can change where Outlook puts RSS posts in the first place.
File –> Account Settings –> Account Settings --> RSS Feeds
Select the feed you want to change, and you’ll notice at the bottom, there is an option called “Change Folder”. Click this button, and you can have Outlook deliver new RSS posts to any folder you want (including your inbox), rather than the default “RSS Feeds –> Blog Name” folder. You can also click Change… above the list of feeds to specify whether Outlook automatically downloads enclosures for the RSS feed, as well as downloading the full article as an .html attachment.
Do that, and you’ll be the first kid on the block to read a new blog post by anyone you follow.
In older versions of OneNote, you were greeted on startup with a built-in OneNote Guide that walked you through the basics of using OneNote. With OneNote 2010, the Personal notebook is the only notebook that shows up by default.
Fortunately, it is pretty easy to restore the OneNote Guide for OneNote 2010. Courtesy of Daniel Escapa on the OneNote team:
Open OneNote
You’ll end up with a guide that shows the new features of OneNote 2010 and how to use them.
Examples:
AKA… how to visualize the files you are storing in SharePoint.
*Update on the below after having spoken with the team that runs the internal Microsoft SharePoint farm (thanks Sam for information on the impact!). While everything mentioned does work, the approach has two downsides:
The two quick and easy approaches to reducing the space used by your SharePoint site are:
As my Dad used to say… TANSTAAFL: There Ain’t No Such Thing As A Free Lunch. If it was as easy to visualize storage as I show below in a supported and resource-kind manner, the SharePoint team would have already added it.
In SharePoint 2007, there was a useful tool underneath Site Collection Administration called “Storage space allocation” that led to storman.aspx underneath http://servername/_layouts/storman.aspx.
This storman tool allowed you to view how your space was being used within your site collection, and if you were filling up your site against your storage quota, you could show documents, document libraries, lists, and recycle bins, sorted by size or date. This was a great way to find large or old documents to delete and free up space.
On the back end, this was a resource intensive tool that could cause database blocking, and as such it did not make the cut for SharePoint 2010.
KB 982587 discusses some possible workarounds for the problem: The Storman.aspx page is removed from SharePoint Server 2010
The Storman.aspx page is used for storage management. For example, the page can show you the top 100 documents or document libraries in terms of size. Therefore, you can use the page to clean up some content from your site by deleting the large content that you no longer need. Because there is no replacement for this page, use one of the following methods to regain certain functionalities: Use Web analytics reports to analyze various aspects of sites and of site collections. For more information about the reports, visit the following Microsoft TechNet Web site: View Web analytics reports (SharePoint Server 2010) (http://technet.microsoft.com/en-us/library/ee663487(office.14).aspx) Verify the version information of each document on the Version History page. To do this, follow these steps: Open the SharePoint Server Web site that contains the document. Point to the name of the document, click the drop-down list, and then click Version History. Use Windows Explorer to check the sizes of the documents that are in a document library. To do this, follow these steps: Click the document library name in SharePoint 2010 Central Administration. On the Library tab, click Open with Explorer. Right-click a document, and then click Properties. On the General tab, view the size of the document. Use the SPSite.StorageManagementInformation method to return information about storage management for the site collection. For more information about the method, visit the following Microsoft Developer Network (MSDN) Web site: SPSite.StorageManagementInformation method (Microsoft.SharePoint) (http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.spsite.storagemanagementinformation.aspx)
The Storman.aspx page is used for storage management. For example, the page can show you the top 100 documents or document libraries in terms of size. Therefore, you can use the page to clean up some content from your site by deleting the large content that you no longer need. Because there is no replacement for this page, use one of the following methods to regain certain functionalities:
View Web analytics reports (SharePoint Server 2010) (http://technet.microsoft.com/en-us/library/ee663487(office.14).aspx)
SPSite.StorageManagementInformation method (Microsoft.SharePoint) (http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.spsite.storagemanagementinformation.aspx)
Those solutions all work, although manually poking through document libraries in Explorer View is not my idea of a good time. As there really are no new problems… let’s see if we can use my favorite tool for visualizing why my hard drive is full, and apply it to finding out what is filling up a SharePoint site collection.
Windows allows you to map network drives via WebDAV. SharePoint allows you to access site collections via WebDAV. To combine the two, put the URL to your site collection in the Folder field of Windows’ Folder field, and you will end up with a drive letter mapped to your SharePoint site collection.
Download and install WinDirStat from http://windirstat.info/ (not a Microsoft product, so if it eats all the cookies in your house or forgets to rewind your VHS tapes… sorry about that). Select that network drive you just mapped, and hit OK.
WinDirStat will scan away for a few minutes, and come back with the view below. At a glance, I can quickly see that the majority of my files are stored in a particular site (the “offerings” and “delivery” subsites use up 84% of my space), and PowerPoint/Zip/WMV files are taking up the vast majority of space.
From here, you can drill down into the tree, select all files of a particular type, or just right click on some of the largest boxes and choose “Explorer Here”, which will open up a window in Windows that is opened to the document library or folder in SharePoint that holds that particular file.
You can then decide what to delete/archive/move to free up space. How’s that for an awesome way to visualize the files you are storing in SharePoint?
(P.S. This works fine in SharePoint 2007 too… I never thought to do it back in the day as I had storman available to show me my big/old files)
Windows SteadyState was a great technology designed for administrators that were responsible for computers used by many people (think labs, kiosks, internet cafes, libraries, community centers, etc). The kind of place where people like to screw around with settings, download viruses, delete files, add stuff that shouldn’t be there…
SteadyState addressed these issues by allowing administrators to set up restrictions as to logon times, allowed programs, what icons showed up on the desktop, would log the computer off after a certain amount of time, and would even discard all changes made my users after logout, resetting the computer to a pristine state for the next user.
As foreshadowed by my past-tense “was” in the first sentence, the bad news is that SteadyState only works with Windows XP and Vista, and there is no version planned for Windows 7. Additionally, the download will only be available through December 31st, 2010; so if you do plan on using SteadyState, download it now here: Windows SteadyState 2.5
The good news is Windows 7 will allow you to natively do almost everything that SteadyState added, and the Windows Team has written up a step-by-step guide on setting up Windows 7 to work well in a lab/café/library/school environment. From the description:
This document is intended primarily for IT pros who configure shared-computer access in business environments, but partners who support shared-computer access in schools, libraries, and Internet cafes will also find the information useful. The document set includes: Creating a Steady State by Using Microsoft Technologies, which describes the native Windows 7 features and free tools from Microsoft that you can use to create a steady state on computers running Windows 7. Group Policy Settings for Creating a Steady State, which is a reference that describes Group Policy settings that you can use to configure computer and user settings and prevent users from changing those settings. The SteadyState Reference worksheet (.xlsx file), which you can use to look up and filter settings that this document and the reference describe. For example, you can quickly find information about settings that are related to Start Menu restrictions.
This document is intended primarily for IT pros who configure shared-computer access in business environments, but partners who support shared-computer access in schools, libraries, and Internet cafes will also find the information useful. The document set includes:
Some features, such as AppLocker (available in Windows 7 Ultimate or Enterprise), will allow MUCH more control over what applications are allowed to run, based off of File version, name, product name, publisher, etc.
Download Creating a Steady State by Using Microsoft Technologies
With school back in session soon (if not already), The Trustworthy Computing team has released a number of useful family safety resources and brochures that would be useful to hand out at a PTA Meeting. You can also use them as supplemental materials to run your own online safety event for your school, Cub Scouts, or other community organization. For additional resources, see our Event Guide and PowerPoint presentation pages.
These free, downloadable resources are designed to help you educate yourself and others about computer security, privacy, and online safety issues and to help you prevent problems and correct problems that do arise.
You can download low-resolution PDF files for home printing, or high-resolution PDF files if you want to have the materials professionally printed and folded for an event.
Brochures are double-sided, four-color handouts and are in either tri-fold (8.5" X 11") or gate-fold (8.5" X 14") format.
Protect Your Kids From Cyberbullying XPS | PDF
Please contact online safety resource support for questions about printing or using these materials with your audience.
I was listening to Windows Weekly on my Zune this morning, and Paul’s Pick of the Week was the Bing Dynamic Theme, which dynamically displays new photos from Bing as your desktop background. Awesome… this is just like Webshots back in the day! (Errr… I guess they are still around at http://www.webshots.com/. We’ll use that information in a second.)
When downloading the theme, I noticed that it is only 1.86KB. That’s a small file… it must be doing some magic behind the scenes to download the actual pictures. That large RSS symbol in the thumbnail is a pretty big hint as to where they come from. I downloaded the theme to my desktop, opened it in Notepad, and the structure is rather clear (and fully documented on MSDN here: Creating and Installing Theme Files. The theme file basically says to keep the icons and sound effects as their defaults, and to download pictures from an RSS feed.
So… if you want to make your own theme with pictures off the Internet, just copy the following text, paste it into Notepad, and change the 3 highlighted areas (the Display Name is what shows up in the Theme control panel as the name for the theme. The RSS feed at the bottom must have the pictures as enclosure.
; Copyright © Microsoft Corp. [Theme] ; Windows 7 - IDS_THEME_DISPLAYNAME_AERO DisplayName=Bing Dynamic ; Computer - SHIDI_SERVER [CLSID\{20D04FE0-3AEA-1069-A2D8-08002B30309D}\DefaultIcon] DefaultValue=%SystemRoot%\System32\imageres.dll,-109 ; UsersFiles - SHIDI_USERFILES [CLSID\{59031A47-3F72-44A7-89C5-5595FE6B30EE}\DefaultIcon] DefaultValue=%SystemRoot%\System32\imageres.dll,-123 ; Network - SHIDI_MYNETWORK [CLSID\{F02C1A0D-BE21-4350-88B0-7367FC96EF3C}\DefaultIcon] DefaultValue=%SystemRoot%\System32\imageres.dll,-25 ; Recycle Bin - SHIDI_RECYCLERFULL SHIDI_RECYCLER [CLSID\{645FF040-5081-101B-9F08-00AA002F954E}\DefaultIcon] Full=%SystemRoot%\System32\imageres.dll,-54 Empty=%SystemRoot%\System32\imageres.dll,-55 [Control Panel\Cursors] AppStarting=%SystemRoot%\cursors\aero_working.ani Arrow=%SystemRoot%\cursors\aero_arrow.cur Hand=%SystemRoot%\cursors\aero_link.cur Help=%SystemRoot%\cursors\aero_helpsel.cur No=%SystemRoot%\cursors\aero_unavail.cur NWPen=%SystemRoot%\cursors\aero_pen.cur SizeAll=%SystemRoot%\cursors\aero_move.cur SizeNESW=%SystemRoot%\cursors\aero_nesw.cur SizeNS=%SystemRoot%\cursors\aero_ns.cur SizeNWSE=%SystemRoot%\cursors\aero_nwse.cur SizeWE=%SystemRoot%\cursors\aero_ew.cur UpArrow=%SystemRoot%\cursors\aero_up.cur Wait=%SystemRoot%\cursors\aero_busy.ani DefaultValue=Windows Aero [Sounds] ; IDS_SCHEME_DEFAULT SchemeName=Windows Default [Control Panel\Desktop] TileWallpaper=0 WallpaperStyle=10 Pattern= [VisualStyles] Path=%SystemRoot%\resources\themes\Aero\Aero.msstyles ColorStyle=NormalColor Size=NormalSize ColorizationColor=0X45409EFE Transparency=1 VisualStyleVersion=10 Composition=1 [MasterThemeSelector] MTSM=DABJDKT [Slideshow] Interval=20000 Shuffle=1 RSSFeed=http://themeserver.microsoft.com/default.aspx?p=Bing&c=Desktop&m=en-US [boot] SCRNSAVE.EXE=
; Copyright © Microsoft Corp.
[Theme] ; Windows 7 - IDS_THEME_DISPLAYNAME_AERO DisplayName=Bing Dynamic
; Computer - SHIDI_SERVER [CLSID\{20D04FE0-3AEA-1069-A2D8-08002B30309D}\DefaultIcon] DefaultValue=%SystemRoot%\System32\imageres.dll,-109
; UsersFiles - SHIDI_USERFILES [CLSID\{59031A47-3F72-44A7-89C5-5595FE6B30EE}\DefaultIcon] DefaultValue=%SystemRoot%\System32\imageres.dll,-123
; Network - SHIDI_MYNETWORK [CLSID\{F02C1A0D-BE21-4350-88B0-7367FC96EF3C}\DefaultIcon] DefaultValue=%SystemRoot%\System32\imageres.dll,-25
; Recycle Bin - SHIDI_RECYCLERFULL SHIDI_RECYCLER [CLSID\{645FF040-5081-101B-9F08-00AA002F954E}\DefaultIcon] Full=%SystemRoot%\System32\imageres.dll,-54 Empty=%SystemRoot%\System32\imageres.dll,-55
[Control Panel\Cursors] AppStarting=%SystemRoot%\cursors\aero_working.ani Arrow=%SystemRoot%\cursors\aero_arrow.cur Hand=%SystemRoot%\cursors\aero_link.cur Help=%SystemRoot%\cursors\aero_helpsel.cur No=%SystemRoot%\cursors\aero_unavail.cur NWPen=%SystemRoot%\cursors\aero_pen.cur SizeAll=%SystemRoot%\cursors\aero_move.cur SizeNESW=%SystemRoot%\cursors\aero_nesw.cur SizeNS=%SystemRoot%\cursors\aero_ns.cur SizeNWSE=%SystemRoot%\cursors\aero_nwse.cur SizeWE=%SystemRoot%\cursors\aero_ew.cur UpArrow=%SystemRoot%\cursors\aero_up.cur Wait=%SystemRoot%\cursors\aero_busy.ani DefaultValue=Windows Aero
[Sounds] ; IDS_SCHEME_DEFAULT SchemeName=Windows Default
[Control Panel\Desktop] TileWallpaper=0 WallpaperStyle=10 Pattern=
[VisualStyles] Path=%SystemRoot%\resources\themes\Aero\Aero.msstyles ColorStyle=NormalColor Size=NormalSize ColorizationColor=0X45409EFE Transparency=1 VisualStyleVersion=10 Composition=1
[MasterThemeSelector] MTSM=DABJDKT
[Slideshow] Interval=20000 Shuffle=1 RSSFeed=http://themeserver.microsoft.com/default.aspx?p=Bing&c=Desktop&m=en-US [boot] SCRNSAVE.EXE=
Save the file with an extension of .theme Double-click it, confirm that you want to download attachments, and it will install itself and start downloading pictures as your desktop background.
Once the pictures are downloaded, you can go in and choose how often they cycle, change how they are displayed (cropped, filled, stretched, etc)
So where to get RSS feeds with pictures? A couple of ideas:
Webshots has a feed of their featured photos here: http://www.webshots.com/rss?type=featuredPhotos NASA’s image of the day feed is here: http://www.nasa.gov/rss/lg_image_of_the_day.rss
Flickr will let you create an RSS feed of any photo stream (their documentation is here), but the easy way to do it is from any photostream on Flickr, click the RSS icon on the toolbar in Internet Explorer, and choose the option for the Photostream RSS feed.
You’ll get a URL that looks like: http://api.flickr.com/services/feeds/photoset.gne?set=72157602630362180&nsid=36114439@N00&lang=en-us&format=rss_200
Add _enc to the end (which adds the pictures as enclosures to the feed, so you end up with something like: http://api.flickr.com/services/feeds/photoset.gne?set=72157602630362180&nsid=36114439@N00&lang=en-us&format=rss_200_enc
Paste that in to your theme definition, save it, install it, and you’ll have a desktop background that pulls from that Flickr Phototream.
If you have any other good Photo RSS feeds, post them in the comments!
By default, Internet Explorer 8 has the Refresh and Stop buttons on the right side of the address bar. I’m used to having them there.
However, if you use alternative browsers, you may prefer to have those buttons on the OTHER side of your address bar
It turns out that you can move them in IE. Just right-click in an empty spot next to your tabs, and choose Customize –> Show Stop and Refresh Buttons before Address Bar.
Voila!
I’m not sure why this isn’t documented, but thought I’d share the solution in case someone is looking to create an image map with SharePoint Designer 2010. To set the stage, I’ll borrow shamelessly from the article showing how to do this with FrontPage 2003- Create an image map:
A picture with one or more clickable areas or hot spots (hot spot: An area on an object containing a hyperlink. An entire object can be a single hot spot, or an object can contain multiple hot spots. A picture with hot spots is called an image map.) is called an image map. The automobile image map in the illustration includes three hot spots, each of which links to a separate page that provides more information about that specific feature — windshields, headlights, or wheels and tires.
A picture with one or more clickable areas or hot spots (hot spot: An area on an object containing a hyperlink. An entire object can be a single hot spot, or an object can contain multiple hot spots. A picture with hot spots is called an image map.) is called an image map.
The automobile image map in the illustration includes three hot spots, each of which links to a separate page that provides more information about that specific feature — windshields, headlights, or wheels and tires.
In SharePoint Designer 2010, all you need to do is open page and select the picture (that you want to add an image map to). At the top of the Ribbon, click on Picture Tools –> Format –> Hotspot, and then add in whatever hotspots you want (after adding the hotspot, you will be prompted for the URL you are linking to).
Note: This will not work on Publishing Pages, as SharePoint Designer will only let you edit the layout of publishing pages, and not the content.
Did I fit enough acronyms (or as my editor friend corrects me… initialisms) in the title there? ;)
I see over on the WPF Blog that the Ribbon (first introduced in Office 2007) has been released for you (the developer) to include in your applications. Many great screenshots at the WPF Blog Post. From the description:
This release is a managed implementation of the Ribbon for WPF. The Ribbon is a command bar that organizes the features of an application into a series of tabs at the top of the application window, is designed to help you quickly find the commands that you need to complete a task. The Ribbon user interface (UI) increases discoverability of features and functions, enables quicker learning of the application, and helps users feel more in control of their experience with the application. The Ribbon replaces the traditional menu bar and toolbars.
The download includes design-time support for Visual Studio 2010 and Expression Blend 4, the Ribbon source code for reference, and the following samples:
If you haven’t had a chance to play around with Windows Azure yet, I just stumbled across a ton of learning resources, a Virtual Lab, and a free one month trial (that does not require a credit card:
Download Microsoft Web Platform Installer
Download Windows Azure Platform Training Kit
Download Windows Azure Tools for Microsoft Visual Studio
Web Seminars: Everything You Need to Know About Azure as a Developer
Web Seminars: PHP and the Windows Azure Platform
In this virtual lab, you will create a fully functional Windows Azure application from scratch. In the process, you will become familiar with several important components of the Windows Azure architecture including Web Roles, Worker Roles, and Windows Azure storage. You will also learn how to integrate a Windows Azure application with Windows Live ID authentication, and you’ll learn how to store relational data in the cloud using SQL Azure.
The first few minutes of the virtual lab are designed to get you up to speed quickly – you’ll install the appropriate development tools and create a new Windows Azure application using Visual Studio 2008. Within 15 minutes, you’ll have a .NET Web application deployed to the cloud using the Windows Azure developer portal.
The remainder of the virtual lab is to explore various facets of Windows Azure and related technologies by building a Web application for a fictional company, Graphic Design Institute. Students of the Institute will be able to log in using Windows Live ID, upload artwork they have completed and publish the artwork so that it is visible to others. From a technical perspective, SQL Azure will be used to store information about the students while Windows Azure storage will contain the actual artwork itself. You will also use Windows Azure queues to enable communication between a Windows Azure Web Role and a Windows Azure Worker Role, in order to enable some background processing in the application.
The recorded video which accompanies this document is designed to walk you through the completion of the entire lab; you should be able to complete the lab using only this document, only the video or the document and video together. The video is approximately two hours long, but you will likely want to pause playback often to absorb the content and explore the code; you should expect to be able to complete the lab within 3-4 hours.
By default, others within your organization can only see whether you are free or busy for a particular timeslot. In theory, people should check whether you are available before scheduling an appointment with you, although nobody seems to do that for me. Hooray for double and triple-booking!
That said, it is possible to let others see more information about your calendar appointments. This can be useful in allowing a co-worker to see details about your calendar so that they do not schedule over an important meeting with a VIP. This can also be dangerous in a world where personal appointments often make their way onto the work calendar. Do you really want your co-workers to see the following appointment?
I just took a look at who had permissions to my calendar, and it was a wide array of folks that I have worked with over the last 3-4 years, and very few of them have a business need to see the actual contents of my calendar anymore. So… here are a few places you can check your permissions in Outlook 2010 (the process should be relatively similar in Outlook 2007, but I only run the latest and greatest ;)
When sharing your calendar, you have the option of choosing how much information is shared with the recipient.
Keep in mind that whatever permissions you give will be given until they are revoked (and if you don’t check regularly, people could have permissions for years after you grant them).
The Full Details option will allow others to open the appointments on your calendar and see the contents. This can be dangerous if you attach e-mails about performance reviews, personal medical information, or other sensitive information to a calendar invite. It is a best practice to give the minimal permissions needed for your co-workers to do their job.
The “Publish Online” option allows you to publish your calendar to Office.com, and has similar privacy settings. I would be very leery of publishing anything other than “Availability only” to the broader internet. I would also recommend using the “Only invited users can subscribe to this calendar”.
The final (and important) button on the calendar ribbon is “Calendar Permissions”. This is where you can check and set permissions that have been granted. I see that I have changed my default permissions to allow for people to be able to see my meeting subjects and locations, which is probably more information that I really want to share with 90,000 of my closest friends at Microsoft. I also see that I have 30-40 people with explicit permissions to see my calendar, many of whom are now on other teams or that do not a good reason to be able to see my calendar. This is where you will want to remove their explicit permissions or give lower permission levels.
Finally, there may be appointments (such as the aforementioned embarrassing doctor appointment) that you do not want to share with anyone, regardless of their permissions. You can open any appointment in Outlook, and on the right hand side of the ribbon, there is a small “Private” option. Click this, and only you will be able to see the appointment. Everyone else will just see “Private Appointment” on your calendar.