| When I published my first blog post on SkyDrive Pro, you guys asked me a lot of questions. Some of them I even knew the answer to! When I wrote that article the only way I knew of to get the SkyDrive Pro client was with the Office 2013 installation. One of my astute readers asked if there was a way to get the SkyDrive Pro client if you didn’t have Office 2013. At the time there wasn’t. I’m happy to report that those dark days are behind us. This week Microsoft released a standalone SkyDrive Pro client installer. Our prayers have been answered. This can be installed along side Office 2007 or Office 2010, and it can be used to sync with SharePoint 2010, SharePoint 2013, and Office 365. Is there anything this can’t do? So get on out there and install that SkyDrive Pro client and start syncing with your SharePoint libraries. All the cool kids are doing it. tk ShortURL: http://www.toddklindt.com/DownloadSkyDrivePro2013 |
| I thought this day would never come, mainly because I’ve told myself “I’ll never write another book!” at least four times. But here it is, my next book, Professional SharePoint 2013 Administration is out!  Isn’t it sexy? How can you get one of these of your very own? You have a lot of options, let’s look at them. Buy a signed copy from me I got some requests for this when my last SharePoint 2010 book came out, so this time I’m offering it. If you’re in the continental United States and you want to buy a signed copy of the book from me, you’re in luck! Click the this link and you’ll be taken to a page where you can order the book. The price will be the cover price of $49.99. I know that’s more than some of the bookstores. I’m doing this all myself so I’m paying for the packaging and the shipping myself. Shipping 3 lbs. books isn’t cheap. If you bought my ebook, “Free Advice” I’ll refund the $4.99 you paid from the price. If you bought it directly from me at http://store.toddklindt.com I’ll refund the $4.99 automatically. If you bought it from Amazon forward me the receipt. Buy it from Amazon Of course you’ll be able to buy both the paper version and the Kindle version at Amazon. If you use this link I’ll get a kickback. It’s not huge, a buck or two, but it all adds up. Thanks in advance. Buy it from Wrox If you want an ebook version for something besides a Kindle, you can buy them directly from Wrox using this link. These ebooks do not have DRM, so they should work on just about anything. Please don’t put them on P2P sites, okay? If you have any questions, you can hit me up on Twitter @toddklindt, or leave a message below. Thanks, tk ShortURL: http://www.toddklindt.com/ProSP2013Admin |
| It’s an age old problem, our SharePoint app pools recycle every night, or they get cranky. But because they recycle every night the first person to hit SharePoint each morning has to wait for the app pools to warm back up, which makes them cranky. All that crankiness makes me cranky. Over the years a variety of startup scripts have been written to address this, and they all work to varying degrees. SharePoint 2013 requires PowerShell v3, and it comes with a bunch of new cmdlets. One of them jumped out at me, Invoke-WebRequest. This cmdlet can be used to download files from web sites, like WGET or CURL. The beauty of Invoke-WebRequest is that it’s built in to every SharePoint 2013 server. While it was built to download files, it can also be used to make general web requests, like to SharePoint sites. You know, to warm up their app pools.  Since it’s PowerShell, it scripts like a dream. The following script will request the default page of the root site collection of each web application in your farm: Get-SPWebApplication | ForEach-Object { Invoke-WebRequest $_.url -UseDefaultCredentials -UseBasicParsing } The –UseDefaultCredentials parameter tells Invoke-WebRequest to log in to the web site as the person that PowerShell is running as. –UseBasicParsing tells Invoke-WebRequest to use basic parsing of the web page. We really don’t care about the web page, we just want to wake SharePoint up to send it to us. If you have multiple WFEs you’ll need to run this on each server. Also, different SharePoint web templates have different assemblies in the background. If the root site collection of a web application is based a Publishing Template any Team sites in that web app will still need to be warmed up. If you wanted to warm up one of each type you could send Invoke-WebRequest a list of site collection URLs instead of web applications, like above. Once you get it all figured out, you can schedule your PowerShell script to run every morning before the work day starts. Scheduling PowerShell is a little tricky. You can use this blog post to create the scheduled task to warm up your app pools for you. You’ll probably need to modify this for your environment, but hopefully it will get you started. tk ShortURL: http://www.toddklindt.com/PoshWarmUp |
| Now that the March 2013 PU is out we have a patch to play with. And this isn’t a normal patch. This patch is important. It will have to be installed in order to install any future patches. You should consider this the base version of SharePoint 2013, especially for new farms. One of the first things I wanted to test was slipstreaming the patch. The news was good, it’s the same process we used with SharePoint 2010. Just extract the update files into the Updates directory before you install SharePoint 2013. Nothing to it. Let’s see how it looked when I did it. Here is what my directory structure looked like:  I copied the files from the SharePoint 2013 ISO into a folder in C:\Install. On a production system you would put this on a non C drive. After I copied the files over I peeked into the updates folder to see what’s in there. This is what I found:  That sounds delightful, let’s drop a patch in there and see what happens. Extracting SharePoint 2013 patches follows the same process as SharePoint 2010, which you can find outlined in this brilliant blog post. Those are the instructions I used when writing this blog post. First I verified the March 2013 PU supported this.  Looks like it does. Let’s go ahead and extract it to our updates folder. After we accept the license terms our updates folder gets full of patch files.  Then install SharePoint 2013 the same way you normally would. Let me know if you have any problems. tk ShortURL: http://www.toddklindt.com/sp2013slipstream |
ShortUrl \_layouts\Images\ShortUrl\ShortUrl.png /_LAYOUTS/ShortUrl/Default.aspx?ListItemID={ItemId}&ItemUrl={ItemUrl} 0x0 0x0 ContentType 0x01 105 Copy ShortUrl \_layouts\Images\ShortUrl\ShortUrl_Copy.png /_layouts/ShortUrl/copytoclipboard.aspx?ListItemID={ItemId}&ItemUrl={ItemUrl} 0x0 0x0 ContentType 0x01 106 Copy OWA ShortUrl \_layouts\Images\ShortUrl\ShortUrl_Copy.png /_layouts/ShortUrl/CopyToClipBoardOWA.aspx?ListItemID={ItemId}&ItemUrl={ItemUrl} 0x0 0x0 ContentType 0x0101 106 Email ShortUrl \_layouts\Images\ShortUrl\ShortUrl_Send.png /_layouts/ShortUrl/EmailLink.aspx?ListItemID={ItemId}&ItemUrl={ItemUrl} 0x0 0x0 ContentType 0x01 106 Compliance Details javascript:commonShowModalDialog('{SiteUrl}/_layouts/itemexpiration.aspx?ID={ItemId}&List={ListId}', 'center:1;dialogHeight:500px;dialogWidth:500px;resizable:yes;status:no;location:no;menubar:no;help:no', function GotoPageAfterClose(pageid){if(pageid == 'hold') {STSNavigate(unescape(decodeURI('{SiteUrl}'))+'/_layouts/hold.aspx?ID={ItemId}&List={ListId}'); return false;} if(pageid == 'audit') {STSNavigate(unescape(decodeURI('{SiteUrl}'))+'/_layouts/Reporting.aspx?Category=Auditing&backtype=item&ID={ItemId}&List={ListId}'); return false;} if(pageid == 'config') {STSNavigate(unescape(decodeURI('{SiteUrl}'))+'/_layouts/expirationconfig.aspx?ID={ItemId}&List={ListId}'); return false;}}, null); return false; 0x0 0x1 ContentType 0x01 898 View in Browser /blog/_layouts/xlviewer.aspx?id={ItemUrl}&DefaultItemOpen=1 0x0 0x1 FileType xlsx 255 View in Browser /blog/_layouts/xlviewer.aspx?id={ItemUrl}&DefaultItemOpen=1 0x0 0x1 FileType xlsm 255 View in Browser /blog/_layouts/xlviewer.aspx?id={ItemUrl}&DefaultItemOpen=1 0x0 0x1 FileType xlsb 255 View in Browser /blog/_layouts/xlviewer.aspx?id={ItemUrl}&DefaultItemOpen=1 0x0 0x1 FileType ods 255 |
|
|
|
|
|
|
|
| There are currently no upcoming events.
|  |
ShortUrl \_layouts\Images\ShortUrl\ShortUrl.png /_LAYOUTS/ShortUrl/Default.aspx?ListItemID={ItemId}&ItemUrl={ItemUrl} 0x0 0x0 ContentType 0x01 105 Copy ShortUrl \_layouts\Images\ShortUrl\ShortUrl_Copy.png /_layouts/ShortUrl/copytoclipboard.aspx?ListItemID={ItemId}&ItemUrl={ItemUrl} 0x0 0x0 ContentType 0x01 106 Copy OWA ShortUrl \_layouts\Images\ShortUrl\ShortUrl_Copy.png /_layouts/ShortUrl/CopyToClipBoardOWA.aspx?ListItemID={ItemId}&ItemUrl={ItemUrl} 0x0 0x0 ContentType 0x0101 106 Email ShortUrl \_layouts\Images\ShortUrl\ShortUrl_Send.png /_layouts/ShortUrl/EmailLink.aspx?ListItemID={ItemId}&ItemUrl={ItemUrl} 0x0 0x0 ContentType 0x01 106 Compliance Details javascript:commonShowModalDialog('{SiteUrl}/_layouts/itemexpiration.aspx?ID={ItemId}&List={ListId}', 'center:1;dialogHeight:500px;dialogWidth:500px;resizable:yes;status:no;location:no;menubar:no;help:no', function GotoPageAfterClose(pageid){if(pageid == 'hold') {STSNavigate(unescape(decodeURI('{SiteUrl}'))+'/_layouts/hold.aspx?ID={ItemId}&List={ListId}'); return false;} if(pageid == 'audit') {STSNavigate(unescape(decodeURI('{SiteUrl}'))+'/_layouts/Reporting.aspx?Category=Auditing&backtype=item&ID={ItemId}&List={ListId}'); return false;} if(pageid == 'config') {STSNavigate(unescape(decodeURI('{SiteUrl}'))+'/_layouts/expirationconfig.aspx?ID={ItemId}&List={ListId}'); return false;}}, null); return false; 0x0 0x1 ContentType 0x01 898 View in Browser /blog/_layouts/xlviewer.aspx?id={ItemUrl}&DefaultItemOpen=1 0x0 0x1 FileType xlsx 255 View in Browser /blog/_layouts/xlviewer.aspx?id={ItemUrl}&DefaultItemOpen=1 0x0 0x1 FileType xlsm 255 View in Browser /blog/_layouts/xlviewer.aspx?id={ItemUrl}&DefaultItemOpen=1 0x0 0x1 FileType xlsb 255 View in Browser /blog/_layouts/xlviewer.aspx?id={ItemUrl}&DefaultItemOpen=1 0x0 0x1 FileType ods 255 |
|
|
|